[Ipopt] Termination code 11
Andreas Waechter
andreasw at watson.ibm.com
Sun May 17 18:34:54 EDT 2009
Hi Johan,
la_replace is a symbol in the Ampl Solver Library (ASL). Just downloaded
the latest version of the ASL and tried some AMPL examples, but didn't get
any error message with valgrind.
It could be that there is a bug in the ASL. Or, it could be that your
version of the GNU compilers has a bug and does not translate the ASL
correctly. (Or, of course, there could be a bug in Ipopt, but this error
happens so early on that I doubt that.)
I cannot reproduce the error, so I suggest you open a ticket. When you do
that please attach the Ipopt/config.log file, as well as your bla.nl file,
and the output of valgrind. But please first reconfigure, adding the
following arguments for your configure script:
CXXFLAGS='-O3 -g -DNDEBUG' CFLAGS='-O3 -g -DNDEBUG' FFAGS='-O3 -g'
Also, please see what happens when you replace the "-O3" above with "-O"
Regards,
Andreas
On Fri, 15 May 2009, [ISO-8859-1] Johan Åkesson wrote:
> Hi,
>
> I tried with a fresh 3.6.1 - here are my findings:
>
> - If I configure with --enable-debug the model solves as expected, that
> is, no termination code 11.
> - If I configure without --enable-debug I still get termination code 11.
> - If I run valgrind, I get the following printout:
>
> johan_013 at osiris:~/Optimica/TOC_0_3_1/optimica_examples/DoubleIntegrator>
> valgrind --db-attach=yes ~/Ipopt/Ipopt-3.6.1/build/bin/ipopt bla.nl
> ==4141== Memcheck, a memory error detector.
> ==4141== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
> ==4141== Using LibVEX rev 1854, a library for dynamic binary translation.
> ==4141== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
> ==4141== Using valgrind-3.3.1, a dynamic binary instrumentation framework.
> ==4141== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
> ==4141== For more details, rerun with: -v
> ==4141==
>
> ==4141== Invalid write of size 8
> ==4141== at 0x806590E: la_replace (in
> /home/johan_013/Ipopt/Ipopt-3.6.1/build/bin/ipopt)
> ==4141== by 0x46314A7: ???
> ==4141== Address 0xa59f14be is not stack'd, malloc'd or (recently) free'd
> ==4141==
>
> I do not know what la_replace is - is it part of IPOPT? Please let me
> know if you would like me to submit a bug report.
>
> Best
> /Johan
>
> Andreas Waechter wrote:
>> Hi,
>>
>> I don't think that there are any relevant changes from 3.6.0 to 3.6.1
>> that might fix this issue...
>>
>> termination code 11 means that there is memory bug. Johan, I suggest
>> you get a clean version of Ipopt (well, then you might was well take
>> 3.6.1) and all dependencies, and reconfigure the same way as you did
>> before, just add "--enable-debug" to the configure command line. Then
>> do the usual make test and make install.
>>
>> Then see if you still have this problem. (If not, try again, but
>> without --enable-debug.) If you still have this problem, you need to
>> create an AMPL input file (*.nl) so that you can run the Ipopt AMPL
>> solver from the command line. To do that, just add
>>
>> write gbla;
>>
>> before the solve command in your AMPL script. This should create a
>> file "bla.nl". Then try to run
>>
>> ipopt bla.nl
>>
>> from the command line, and hopefully you will still see the error.
>> Now you can run Ipopt through a debugger or better, a memory checker,
>> as in
>>
>> valgrind --db-attach=yes ipopt bla.nl
>>
>> This will tell you where the memory problem appears. Maybe you can
>> already see then what the problem is. If you can't please submit a
>> bug ticket at the Ipopt mailing list describing exactly you problem
>> (and what OS and compilers you are using), and attach the
>> Ipopt/config.log file (in the Ipopt subdirectory!) and the files
>> necessary to reproduce this problem.
>>
>> Regards,
>>
>> Andreas
>>
>> On Fri, 15 May 2009, Ashutosh Mahajan wrote:
>>
>>> 3.6.1 is also available. the release didnt seem to be announced on
>>> the mailing
>>> list. the issue might have been fixed there.
>>>
>>> ashutosh
>>>
>>> On Fri, 15 May 2009, Johan ?kesson wrote:
>>>
>>>> Hi!
>>>>
>>>> I just compiled Ipopt 3.6.0 (with MA27) on an OpenSuse 11 system.
>>>> Compilation went went without problems and I can run the tests (make
>>>> tests).
>>>>
>>>> When I run the freshly compiled Ipopt executable with AMPL I get an
>>>> error with some models, for example
>>>>
>>>> > ampl DoubleIntegrator.run
>>>>
>>>> Ipopt 3.5.4: max_iter = 10000
>>>>
>>>> error running /home/jakesson/Ipopt/Ipopt-3.6.0/build/bin/ipopt:
>>>> termination code 11
>>>> <BREAK>
>>>>
>>>> The problem I try to solve is simple and solves easily on other
>>>> platforms. A strange thing is that some models solve just fine with
>>>> the very same Ipopt executable that gives termination code 11 in the
>>>> example above.
>>>>
>>>> I have also tried to compile Ipopt 3.5.4 on the very same machine
>>>> but
>>>> experience the exact same results.
>>>>
>>>> Best
>>>> /Johan
>>>
>>>> _______________________________________________
>>>> Ipopt mailing list
>>>> Ipopt at list.coin-or.org
>>>> http://list.coin-or.org/mailman/listinfo/ipopt
>>>
>>>
>>> --
>>> regards
>>> Ashutosh Mahajan
>>> http://coral.ie.lehigh.edu/~asm4
>>>
>>> _______________________________________________
>>> Ipopt mailing list
>>> Ipopt at list.coin-or.org
>>> http://list.coin-or.org/mailman/listinfo/ipopt
>>>
>
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/ipopt
>
More information about the Ipopt
mailing list