Tony, thank you again for the quick answer.<div><br></div><div>My main interest with BLAS was to make the MA27 dll run faster, but as you pointed out the performance difference is probably due to something else, so I will study the HSL build system better before trying to understand what is going on.</div>
<div><br></div><div>I will also take a look at ATLAS, it indeed seems to have more configuration options, and a better BLAS library seems to be useful at many situations.</div><div><br></div><div>Pedro.</div><div><br><div class="gmail_quote">
On Tue, Dec 25, 2012 at 4:41 PM, Tony Kelman <span dir="ltr"><<a href="mailto:kelman@berkeley.edu" target="_blank">kelman@berkeley.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<div dir="ltr">
<div style="font-size:12pt;font-family:'Calibri'">
<div>MA27 doesn’t use BLAS, so the performance difference you are seeing there
is due to different compilers, and maybe other overhead things like dll file
size. Who knows what compiler the version you found was using. I’ll guess that
it may have been f2c -> Visual Studio, I always assumed f2c wouldn’t give
very fast code but apparently that assumption was wrong.</div>
<div> </div>
<div>The only non-Netlib BLAS I’ve ever tried using on Windows was the mkl.dll
that’s distributed with Matlab. As I said, optimized Blas implementations may
not be easy to build on Windows in the way Ipopt requires. If the build system /
makefiles of those Blas implementations are not building .a libraries in MinGW,
you should ask on those specific projects’ mailing lists.</div>
<div> </div>
<div>From what I recall ATLAS may have a more native-style static-library build
system that hopefully works in MinGW. Looks like you can get ACML Windows
binaries for free (and maybe Intel MKL as part of the C++ Studio XE if you’re a
student), but those are typically compiled assuming the Intel Fortran compiler -
if you don’t have access to that compiler, you need to do some header trickery
to handle trailing underscores, I can give you some specific details off-list if
you want to try that route.</div>
<div> </div>
<div>-Tony</div>
<div> </div>
<div style="font-size:small;font-style:normal;text-decoration:none;font-family:'Calibri';display:inline;font-weight:normal">
<div style="FONT:10pt tahoma">
<div> </div>
<div style="BACKGROUND:#f5f5f5">
<div><b>From:</b> <a title="tabacof@gmail.com" href="mailto:tabacof@gmail.com" target="_blank">Pedro Tabacof</a> </div>
<div><b>Sent:</b> Tuesday, December 25, 2012 11:00 AM</div><div class="im">
<div><b>To:</b> <a title="kelman@berkeley.edu" href="mailto:kelman@berkeley.edu" target="_blank">Tony Kelman</a> </div>
<div><b>Cc:</b> <a title="ipopt@list.coin-or.org" href="mailto:ipopt@list.coin-or.org" target="_blank">ipopt@list.coin-or.org</a> </div>
<div><b>Subject:</b> Re: [Ipopt] Obtaining MA57 dll</div></div></div></div>
<div> </div></div><div class="im">
<div style="font-size:small;font-style:normal;text-decoration:none;font-family:'Calibri';display:inline;font-weight:normal">Hello,
<div> </div>
<div>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.</div>
<div> </div>
<div>I tried to generate GoToBLAS and OpenBLAS static libraries here but Ipopt
actually says they are not valid BLAS libraries when using the <i>configure</i>
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.</div>
<div> </div>
<div>Has anyone had success using precompiled BLAS libraries with Ipopt on
Windows (MinGW)? Unfortunately I have no way of using Linux on my project.</div>
<div> </div>
<div>Happy holidays,<br>Pedro</div>
<div> </div>
<div>[1] <a href="https://projects.coin-or.org/OS/browser/trunk/OS/MSVisualStudio/lib/libhsl.dll?rev=1703" target="_blank">https://projects.coin-or.org/OS/browser/trunk/OS/MSVisualStudio/lib/libhsl.dll?rev=1703</a></div>
<div>
<div> </div></div></div></div></div></div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Pedro Tabacof,<br>Unicamp - Eng. de Computação 08.<br>
</div>