[Ipopt] Obtaining MA57 dll

Pedro Tabacof tabacof at gmail.com
Tue Dec 25 14:00:18 EST 2012


I'm using Ipopt within CasADi for dynamic optimization and from some simple
tests I can verify that the optimized BLAS is much faster (around 3-4
times). I'm comparing the netlib MA27 I compiled myself with a mysterious
MA27 dll file I found on Ipopt trunk [1], which I suppose includes some
optimized library for Windows.

I tried to generate GoToBLAS and OpenBLAS static libraries here but Ipopt
actually says they are not valid BLAS libraries when using the
*configure*script. The only thing I found suspicious about the process
is that the
static libraries being generated by the BLAS makefiles are ".lib"  instead
of ".a" files, even though I'm doing everything through MSYS+MinGW.

Has anyone had success using precompiled BLAS libraries with Ipopt on
Windows (MinGW)? Unfortunately I have no way of using Linux on my project.

Happy holidays,


On Sat, Dec 22, 2012 at 7:09 AM, Tony Kelman <kelman at berkeley.edu> wrote:

>   Happy to help, glad that worked for you.
> Yes, there can be, but it’s tough to predict how significant it will be.
> It depends very much on your problem structure and size.
> The most noticeable performance difference is in large dense matrix-matrix
> BLAS operations. Many of the sparse linear solvers that Ipopt uses will try
> to aggregate dense sub-blocks together to use more efficient BLAS
> operations. The performance difference between basic reference BLAS and
> optimized versions thereof (MKL, ACML, ATLAS, GotoBLAS/OpenBLAS, Apple
> vecLib, etc) on sparse optimization problems in Ipopt will depend on how
> effective that aggregation into dense sub-blocks is.
> The README from the HSL folks says the optimized BLAS versions can be 10x
> faster than the reference implementation. I was doing some benchmarking a
> few months back with nonlinear MPC problems from HVAC control (a few tens
> of thousands of variables) and saw closer to a factor of 2 most of the
> time, but it varied a lot between the different combinations of which
> sparse solver and which optimized BLAS implementation. YMMV!
> Another thing to note is most optimized BLAS implementations are more
> readily available, easier to build, and tuned better for Linux than for
> Windows. Most of the Ipopt performance benchmarking and comparison I’ve
> done and seen other people do has been in Linux (and some on Macs).
> -Tony
>  *From:* Pedro Tabacof <tabacof at gmail.com>
> *Sent:* Friday, December 21, 2012 6:23 AM
> *To:* Tony Kelman <kelman at berkeley.edu>
> *Cc:* ipopt at list.coin-or.org
> *Subject:* Re: [Ipopt] Obtaining MA57 dll
> Tony, thank you very much, that worked perfectly!
> I ended up using the standard netlib packages (using Ipopt "get" scripts),
> do you think there is a significant performance difference from other
> implementations?
> Pedro.

Pedro Tabacof,
Unicamp - Eng. de Computação 08.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20121225/1dc6bb6c/attachment.html>

More information about the Ipopt mailing list