[Ipopt] Segmentation fault due to MUMPS memory allocation
Elias Trommer
elias.trommer at rl-institut.de
Mon Jan 13 03:33:17 EST 2020
Hi everyone,
I'm trying to use ipopt as a solver for a non-linear optimization problem in Julia. This works fine for smaller instances of the problem, however for larger instances MUMPS seems to fail because of a failing memory allocation. The full error output is at the end of this eMail.
Because I previously had problems with this, I've decreased the option `mumps_mem_percent` to a value of 100 so that the restoration would not fail during the first iteration as described in the error message.
However, for this particular problem, I'm having a hard time pinning down the source. It's running on an Ubuntu 18.04 machine with 64Gb of RAM and 16Gb of Swap, so I presume it's not a lack of actual memory, but rather an allocation issue. I've also checked the ulimit on the machine I'm working on and it's set to unlimited.
I was hoping someone could help me pin down the cause of this issue (and ideally how to fix it)!
Thank you in advance,
Elias Trommer
```
This is Ipopt version 3.12.10, running with linear solver mumps.
NOTE: Other linear solvers might be more efficient (see Ipopt documentation).
Number of nonzeros in equality constraint Jacobian...: 863116
Number of nonzeros in inequality constraint Jacobian.: 108177
Number of nonzeros in Lagrangian Hessian.............: 358996
Total number of variables............................: 145445
variables with only lower bounds: 0
variables with lower and upper bounds: 144771
variables with only upper bounds: 0
Total number of equality constraints.................: 145338
Total number of inequality constraints...............: 36059
inequality constraints with only lower bounds: 0
inequality constraints with lower and upper bounds: 0
inequality constraints with only upper bounds: 36059
iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
0 2.3869702e+03 4.60e+01 1.00e+00 -1.0 0.00e+00 - 0.00e+00 0.00e+00 0
1 2.3914541e+03 4.48e+01 2.58e+05 -1.0 6.23e+01 - 2.96e-05 2.61e-02F 1
2 2.3936754e+03 3.08e+02 7.11e+07 -1.0 6.07e+01 - 4.74e-01 9.61e-01f 1
3 2.3924281e+03 3.08e+02 7.10e+07 -1.0 4.05e+03 -2.0 1.11e-03 6.56e-04f 1
4 2.3924033e+03 3.08e+02 7.10e+07 -1.0 1.40e+03 -1.6 5.44e-03 3.68e-05f 1
5 2.3920925e+03 3.08e+02 7.10e+07 -1.0 3.06e+03 -2.1 2.68e-03 3.03e-04f 1
6 2.3918892e+03 3.08e+02 7.10e+07 -1.0 1.07e+04 - 6.52e-04 1.30e-04f 1
7 2.3915687e+03 3.07e+02 7.09e+07 -1.0 1.11e+03 - 5.12e-03 7.38e-04f 1
8 2.3908132e+03 3.07e+02 7.08e+07 -1.0 1.13e+03 - 1.08e-02 2.08e-03f 1
9 2.3907401e+03 3.07e+02 9.31e+09 -1.0 7.76e+02 - 2.79e-02 1.84e-04f 1
iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
10 2.3892870e+03 3.05e+02 1.62e+10 -1.0 5.84e+02 - 2.56e-02 6.94e-03f 1
11 2.3894049e+03 3.04e+02 3.09e+10 -1.0 4.25e+02 - 4.15e-02 1.21e-03f 1
12 2.3960908e+03 2.88e+02 3.92e+10 -1.0 3.76e+02 - 8.17e-02 5.33e-02f 1
13 2.4009546e+03 2.78e+02 2.85e+10 -1.0 3.05e+02 - 3.87e-03 3.45e-02f 1
14 2.4012483e+03 2.77e+02 3.19e+10 -1.0 2.93e+02 - 1.40e-02 2.36e-03f 1
15 2.4038152e+03 2.72e+02 3.44e+10 -1.0 2.93e+02 - 3.19e-02 2.10e-02f 1
16 2.4038403e+03 2.72e+02 4.23e+10 -1.0 2.86e+02 - 2.55e-02 2.15e-04h 1
17 2.4036648e+03 2.71e+02 4.17e+10 -1.0 4.57e+03 - 3.36e-06 3.15e-04f 1
18 2.4069581e+03 2.67e+02 3.57e+10 -1.0 2.89e+02 - 2.86e-04 1.71e-02f 1
19 2.4069888e+03 2.67e+02 6.39e+10 -1.0 2.83e+02 - 2.26e-02 1.75e-04h 1
iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
20 2.4068113e+03 2.67e+02 6.38e+10 -1.0 3.88e+04 - 1.85e-06 2.86e-05h 1
21 2.4067828e+03 2.67e+02 4.51e+10 -1.0 4.20e+03 - 3.96e-06 7.14e-05h 1
MUMPS returned INFO(1) = -9 and requires more memory, reallocating. Attempt 1
Increasing icntl[13] from 80 to 160.
MUMPS returned INFO(1) = -9 and requires more memory, reallocating. Attempt 1
Increasing icntl[13] from 160 to 320.
MUMPS returned INFO(1) = -9 and requires more memory, reallocating. Attempt 2
Increasing icntl[13] from 320 to 640.
MUMPS returned INFO(1) = -9 and requires more memory, reallocating. Attempt 3
Increasing icntl[13] from 640 to 1280.
MUMPS returned INFO(1) = -9 and requires more memory, reallocating. Attempt 4
Increasing icntl[13] from 1280 to 2560.
22 2.4067829e+03 2.67e+02 4.51e+10 -1.0 5.70e+00 5.8 2.39e-05 1.79e-05h 1
MUMPS returned INFO(1) = -9 and requires more memory, reallocating. Attempt 1
Increasing icntl[13] from 2560 to 5120.
MUMPS returned INFO(1) = -9 and requires more memory, reallocating. Attempt 2
Increasing icntl[13] from 5120 to 10240.
MUMPS returned INFO(1) = -9 and requires more memory, reallocating. Attempt 3
Increasing icntl[13] from 10240 to 20480.
Problem with integer stack size 1 1 6
signal (11): Segmentation Fault
```
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20200113/33ca3421/attachment.html>
More information about the Ipopt
mailing list