<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Exchange Server">
<!-- converted from rtf -->
<style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>
</head>
<body>
<font face="Calibri" size="2"><span style="font-size:11pt;">
<div>Hi</div>
<div> </div>
<div>I am using IPOPT to solve an optimal control problem based on a direct collocation-based method. By accident (reusing old code), I had linked my code to a version of BLAS that was shipped with the optimization software Galahad version 2.60004 that I have
installed. When I instead link to Netlib’s version of BLAS (shipped with my OS Ubuntu 16.04 LTS), the number of iterations increases from 191 to 427 (the problem is solved equally well in both cases, i.e. IPOPT converges to an optimal solution). Further, I
tried to link it to OpenBLAS version 0.2.20 that I have downloaded and compiled. In this case, the number of iterations was 695 (I still get the same solution). I also wanted to try ATLAS, but I had trouble turning off CPU throttling, so ultimately, I skipped
it.<br>

<br>

I wouldn’t normally expect any significant change in the number of iterations when changing the BLAS version, but as I can understand from projects.coin-or.org/Ipopt/ticket/213, it can be due to parallelization. I didn’t do anything specific to turn parallelization
on or off, but I guess there might be some behind the curtains. I am still surprised that the changes are so significant.</div>
<div> </div>
<div>Now, my question is:</div>
<div> </div>
<div>Is there something I should consider when choosing which version of BLAS to use and how to compile it in order to get the best performance (e.g. the lowest number of iterations)? (My expectation was that OpenBlas would perform better than the Netlib BLAS
shipped with my OS which should in turn perform better than the Netlib BLAS shipped with Galahad which is old according to the Galahad developers.) Or might it be random such that for other similar examples, OpenBLAS could give the lowest number of iterations?</div>
<div> </div>
<div>The repeatability is less of an issue than performance (it is for online purposes, i.e. for NMPC).</div>
<div> </div>
<div>A few pieces of information about my setup:</div>
<div> </div>
<div>I use the callable IPOPT C library version 3.12.4</div>
<div>OS: Ubuntu 16.04 LTS</div>
<div>Compiler: GNU gcc 5.4.0</div>
<div>Cores: 4 cores, each with 2 processors</div>
<div>Linear solver: MA57 from HSL (<a href="http://www.hsl.rl.ac.uk/ipopt/"><font color="blue"><u>www.hsl.rl.ac.uk/ipopt/</u></font></a>)</div>
<div> </div>
<div>If any other information is necessary, please let me know.</div>
<div> </div>
<div>Best regards</div>
<div>Tobias</div>
<div> </div>
<div><font size="1"><span style="font-size:8pt;"><b>Tobias K. S. Ritschel</b></span></font></div>
<div><font size="1"><span style="font-size:8pt;">2-control ApS</span></font></div>
<div><font size="1"><span style="font-size:8pt;">Frimodtsvej 11</span></font></div>
<div><font size="1"><span style="font-size:8pt;">DK-2900 Hellerup</span></font></div>
<div><font size="1"><span style="font-size:8pt;">Denmark</span></font></div>
<div><a href="info@2-control.dk"><font size="1" color="blue"><span style="font-size:8pt;"><u>info@2-control.dk</u></span></font></a></div>
<div><a href="www.2-control.dk"><font size="1" color="blue"><span style="font-size:8pt;"><u>www.2-control.dk</u></span></font></a></div>
<div> </div>
<div> </div>
<div> </div>
</span></font>
</body>
</html>