[Ipopt] MA86 library
Jonathan Hogg
jonathan.hogg at stfc.ac.uk
Fri Feb 10 04:16:37 EST 2012
As the developer of these codes, let me summarise our experience with
these (I'm currently preparing a paper with some numerical results, but
this has been delayed by other things).
*HSL_MA77* is the slowest, unless you have insufficient memory to store
the factorization, in which case it can use disk in an out-of-core mode
much more efficiently than relying on your OS's virtual memory
implementation. To say it is more economical in terms of memory is not
entirely inaccurate (if both are used in core HSL_MA86 is more
economical) - it (a) copes significantly better when it runs out and (b)
can use disk in place of memory from the start if you want it to.
*HSL_MA86* has better parallel scaling on LARGE problems (those taking
more than 10s per factorization, say). On small problems, it is
considerably slower than MA57. It is also not bit-compatible, which
means that (in parallel) running the same factorization twice will
result in slightly different answers. This will inevitably result in
different (but equally valid!) answers produced by Ipopt each time it is
run. This makes debugging difficult and can confuse more naive users.
Further, we have observed that at times this will result in finding
different local optima, or even sometimes failing to find a suitable
optimum on some runs while successfully finding one on others. I've not
yet quantified how often this occurs.
*HSL_MA97* was designed after our experience with HSL_MA86, and in
addition to bit-compatibility, aims to have better performance on
smaller problems. Performance wise it is almost (in our experiments)
comparable in performance to MA57 on all but the smallest problems. It
is faster on larger problems and also achieves better parallel scaling
than MA57 with threaded BLAS - but not as good as HSL_MA86.
If you want to try these out I'm happy to provide our development
versions of the interfaces on request, but this will likely require you
to be happy with modifying the autotools files associated with Ipopt in
order to compile them successfully. (Our legal people are not happy for
us to distribute Ipopt in its entirety due to the choice of law clause).
Jonathan
On 09/02/12 20:59, Joel Andersson wrote:
> Hello!
>
> I have seen some mails to the list about the MA86 and MA97 linear
> solvers. Can anyone report any good or bad experiences from using
> these linear solvers with Ipopt? If I understand things correctly,
> MA86 and MA97 are parallelized with OpenMP making them suitable for
> multicore architectures, but other than that, are they more or less
> equivalent to MA57 in terms of license and method used?
>
> Also, what is the difference between the two, from the documentation I
> see that MA86 is likely faster, but not "bit-compatible". What is this
> and is it important for Ipopt? I also saw that there is yet another
> possible HSL solver - MA77 which is apparently more economical in
> terms of memory if I understand things right.
>
> Does anyone have any experiences to share?
>
> Best,
> Joel
>
> 2012/2/9 Stefan Vigerske<stefan at math.hu-berlin.de>:
>> Hi,
>>
>>
>>> I started trying BETA GAMS 23.8 with Ipopt 3.10. I wanted to try MA86
>>> along
>>> with Ipopt, so I downloaded the code. In order to make it work with Ipopt,
>>> I
>>> have to compile it into a library called libhsl.dll. My question is if the
>>> compilation process of MA86 is the same as MA57 (w/ MS Visual Studio).
>>> Thank
>>> you.
>>
>> It's more-or-less the same. Files are different, but you would just need
>> Fortran and C compilers, too.
>>
>> However, there are some problems with the Ipopt/MA86 interface in GAMS 23.8
>> beta. These should be fixed in the final GAMS 23.8 release.
>>
>> Stefan
>>
>>>
>>>
>>> Manuel Andrés Ramos Castillo
>>>
>>> Asistente Graduado
>>>
>>> Departamento de Ingeniería Química
>>>
>>> Universidad de Los Andes
>>>
>>> Tel. 3394949 Ext. 1841
>>>
>>> Edificio Mario Laserna
>>>
>>> Oficina 751
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Ipopt mailing list
>>> Ipopt at list.coin-or.org
>>> http://list.coin-or.org/mailman/listinfo/ipopt
>>
>>
>> --
>> Stefan Vigerske
>> Humboldt University Berlin, Numerical Mathematics
>> http://www.math.hu-berlin.de/~stefan
>> _______________________________________________
>> Ipopt mailing list
>> Ipopt at list.coin-or.org
>> http://list.coin-or.org/mailman/listinfo/ipopt
>
>
--
Scanned by iCritical.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20120210/4a78524e/attachment.html>
More information about the Ipopt
mailing list