[Ipopt] Obtaining MA57 dll

Tony Kelman kelman at berkeley.edu
Sat Dec 22 05:09:33 EST 2012


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 
Sent: Friday, December 21, 2012 6:23 AM
To: Tony Kelman 
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.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20121222/7c5a9169/attachment.html>


More information about the Ipopt mailing list