[Cbc] Barrier method SEGV (out of memory) -- increase memory limit?
Martin Koutecký
koutecky at kam.mff.cuni.cz
Sat Apr 5 10:32:11 EDT 2014
Hello,
I'm trying to solve a big LP (continuous) problem using the barrier
method, but I'm getting "Segmentation fault" some time after presolve
(before optimization starts, seems like).
When I look at the memory usage in htop it goes through 3 stages:
1. VIRT = RES = ~8GB after the problem is loaded, during presolve
2. VIRT = 13G, RES = 8-10G, after this the line "1.70542e+09 elements
in sparse Cholesky, flop count 2.20667e+16" is printed.
3. VIRT = 20G, RES rises from 7G to 20G and then cbc crashes.
Presolve writes this:
Presolve 1588289 (-6281501) rows, 4931364 (-6482760) columns and
35692658 (-21407980) elements
My questions are these:
- since I have more memory (128G) then the 20G it allocates (and runs
out of), can I increase the limit somehow (manually)?
- or is the problem too big anyway?
(Gurobi's barrier solver crashes on it with something like "would need
~700G for factorization")
The dual simplex solver has been working on the problem for the past
few days (and is slowly making progress). Curiously enough, it's doing
better than both Gurobi and CPLEX (dual simplex). (Maybe I don't know
how to tune their parameters.) GLPK is completely lost.
Thanks for any help,
Martin
---------------
The full output is this:
Welcome to the CBC MILP Solver
Version: 2.8.9
Build Date: Apr 5 2014
command line - [...]cbc/Cbc-2.8.9/Cbc/src/.libs/lt-cbc
[...]14989-pulp.mps barr printingOptions rows solution
/tmp/14989-pulp_barr.sol (default strategy 1)
At line 2 NAME MODEL
At line 3 ROWS
At line 7869795 COLUMNS
At line 64970506 RHS
At line 72840297 BOUNDS
At line 84254422 ENDATA
Problem MODEL has 7869790 rows, 11414124 columns and 57100638 elements
Coin0008I MODEL read with 0 errors
Presolve 1588289 (-6281501) rows, 4931364 (-6482760) columns and
35692658 (-21407980) elements
1.70542e+09 elements in sparse Cholesky, flop count 2.20667e+16
Segmentation fault
More information about the Cbc
mailing list