[Clp] Core Dump found when using Clp 1.15

John Forrest john.forrest at fastercoin.com
Thu Mar 12 13:14:31 EDT 2015


GUB is probably broken.

I am not sure how much effort I want to put into fixing it, as GUB has 
several deficiencies (e.g. less accuracy than normal simplex).

What shape are the real models you wish to solve - number of ordinary 
rows, number of gub rows etc?

John Forrest
On 12/03/15 14:34, 郑一源 wrote:
> Hi all.
> We are using Clp to solve linear program in an online system., run on
> redhat linux, Clp is called as native code in Java using JNI. The
> problem is large and sparse, so we are using the GUB technique as the
> example codes.  There are times the program crashes, and I need help.
> In the beginning I found the following core dump as below. The program
> crashes when deleting the ClpSImplex. The memory has been in invalid
> state.
>
> #0  0x0000003a95e30265 in raise () from /lib64/libc.so.6
> #1  0x0000003a95e31d10 in abort () from /lib64/libc.so.6
> #2  0x0000003a95e6a84b in __libc_message () from /lib64/libc.so.6
> #3  0x0000003a95e7230f in _int_free () from /lib64/libc.so.6
> #4  0x0000003a95e7276b in free () from /lib64/libc.so.6
> #5  0x00002aaab9205890 in ClpDynamicMatrix::~ClpDynamicMatrix() ()
> from /data/stormdata/libCallClpGub.so
> #6  0x00002aaab921543f in ClpModel::gutsOfDelete(int) () from
> /data/stormdata/libCallClpGub.so
> #7  0x00002aaab9222ed1 in ClpModel::~ClpModel() () from
> /data/stormdata/libCallClpGub.so
> #8  0x00002aaab92055ff in
> Java_com_adsame_rtb_duallearner_gap_clp_CLPSolverGUB_solveDual () from
> /data/stormdata/libCallClpGub.so
>
> To debug this issue, I make Clp again with --enable-debug flag. And I
> found two type of core dump shown below. As you may see in the dump,
> asserts in the files are triggered during the run.
> ClpPackedMatrix.cpp:2490
> ClpNonLinearCost.cpp:754
>
> It seems like the solver has encountered some exceptional cases. I
> guess this might result in invalid memory access which may be the
> cause of the segmentation fault above.
>
> #0  0x0000003a95e30265 in raise () from /lib64/libc.so.6
> #1  0x0000003a95e31d10 in abort () from /lib64/libc.so.6
> #2  0x0000003a95e296e6 in __assert_fail () from /lib64/libc.so.6
> #3  0x00002aaab9286bb0 in ClpPackedMatrix::fillBasis
> (this=0x2aaab1848b00, model=0x2aaab1737740,
> whichColumn=0x2aaab1220be8, numberColumnBasic=@0x45467a58,
>      indexRowU=0x2aaabceed7f0, start=0x2aaabc03cd58,
> rowCount=0x2aaabc828e70, columnCount=0x2aaabc15d388,
> elementU=0x2aaabc5dc9c0) at ClpPackedMatrix.cpp:2490
> #4  0x00002aaab9245a8b in ClpFactorization::factorize
> (this=0x2aaab1768880, model=0x2aaab1737740, solveType=1,
> valuesPass=false) at ClpFactorization.cpp:1985
> #5  0x00002aaab92e05b1 in ClpSimplex::internalFactorize
> (this=0x2aaab1737740, solveType=1) at ClpSimplex.cpp:1823
> #6  0x00002aaab9351e62 in ClpSimplexPrimal::statusOfProblemInPrimal
> (this=0x2aaab1737740, lastCleaned=@0x4546812c, type=1,
> progress=0x2aaab1737c80, doFactorization=true,
>      ifValuesPass=0, originalModel=0x0) at ClpSimplexPrimal.cpp:828
> #7  0x00002aaab9359dcc in ClpSimplexPrimal::primal
> (this=0x2aaab1737740, ifValuesPass=0, startFinishOptions=0) at
> ClpSimplexPrimal.cpp:343
> #8  0x00002aaab92edc28 in ClpSimplex::primal (this=0x2aaab1737740,
> ifValuesPass=0, startFinishOptions=0) at ClpSimplex.cpp:5770
> #9  0x00002aaab9230e8f in solveDuals(ClpSimplex&, double) () from
> /data/stormdata/libCallClpGubHeapModel.so
>
>
>
> #2  0x0000003a95e296e6 in __assert_fail () from /lib64/libc.so.6
> #3  0x00002aaab52621bb in ClpNonLinearCost::checkInfeasibilities
> (this=0x53c3c140, oldTolerance=0) at ClpNonLinearCost.cpp:754
> #4  0x00002aaab52cc04b in ClpSimplex::gutsOfSolution (this=0x54551b60,
> givenDuals=0x0, givenPrimals=0x0, valuesPass=false) at
> ClpSimplex.cpp:576
> #5  0x00002aaab533b99c in ClpSimplexPrimal::statusOfProblemInPrimal
> (this=0x54551b60, lastCleaned=@0x44caa2ac, type=2,
> progress=0x545520a0, doFactorization=true,
>      ifValuesPass=0, originalModel=0x0) at ClpSimplexPrimal.cpp:969
> #6  0x00002aaab5342dcc in ClpSimplexPrimal::primal (this=0x54551b60,
> ifValuesPass=0, startFinishOptions=0) at ClpSimplexPrimal.cpp:343
> #7  0x00002aaab52d6c28 in ClpSimplex::primal (this=0x54551b60,
> ifValuesPass=0, startFinishOptions=0) at ClpSimplex.cpp:5770
> #8  0x00002aaab5219e8f in solveDuals(ClpSimplex&, double) () from
> /data/stormdata/libCallClpGubHeapModel.so
>
> Will you please give some guide? My code is in the attachment
>
>
> _______________________________________________
> Clp mailing list
> Clp at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/clp

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/clp/attachments/20150312/86c7c859/attachment.html>


More information about the Clp mailing list