[Ipopt] Ipopt parallelism

gio.srt at gmail.com gio.srt at gmail.com
Sun Feb 12 04:04:48 EST 2017

Ok, setting OMP_NUM_THREADS=1 outside Python did the trick, instead MLK_NUM_THREADS didn’t work. This is a bit strange, because OMP acts with MA86, MA97, and Pardiso while MLK acts with Blas. 
Since Ipopt says during runtime that it is using ma27, I’m a bit confused. Not sure whether it is a bug or I’m just missing something. 
Anyway, now it works as intended, thanks for your help!


> On 12 Feb 2017, at 15:51, Anthony D. Kelman <kelman at berkeley.edu> wrote:
> Try setting them outside of python. If you've already imported the library it might be too late for the environment variable to make a difference.
> On Feb 11, 2017 11:35 PM, <gio.srt at gmail.com <mailto:gio.srt at gmail.com>> wrote:
> Yes, I forgot to mention that I tried to use:
> os.environ["OMP_NUM_THREADS"] = "1"
> os.environ["MKL_NUM_THREADS"] = "1"
> os.environ["GOTO_NUM_THREADS"] = “1"
> at the beginning of the Python script but without success.
> Gio 
>> On 12 Feb 2017, at 15:16, Anthony D. Kelman <kelman at berkeley.edu <mailto:kelman at berkeley.edu>> wrote:
>> Depends which blas implementation you're using, but there should be an environment variable to control the threading.
>> On Feb 11, 2017 11:15 PM, <gio.srt at gmail.com <mailto:gio.srt at gmail.com>> wrote:
>> Hi everyone,
>> I’m using Ipopt on a server as a guest, meaning that I have no idea how Ipopt has been compiled or maintained. Ipopt is lunched within a Python script using Pyomo with the following options:
>> max_iter=1000
>> acceptable_tol=0.001
>> honor_original_bounds=no
>> max_cpu_time=20
>> The server is running Ipopt version 3.12.2, using ma27 (this is what the solver output says).
>> My problem is that Ipopt is using more than one core, which I don’t like in this case. The linear solver is definitely not the source of the parallelism, since only MA86 and M97 support that, which reduce the area of research to Blas, if I’m not mistaken.
>> Any idea how I could force Ipopt to use only one core without knowing exactly what going on in the background? Or, say that Blas is causing those parallel calls, how do I disable that during run time?
>> Thanks,
>> Giorgio
>> _______________________________________________
>> Ipopt mailing list
>> Ipopt at list.coin-or.org <mailto:Ipopt at list.coin-or.org>
>> http://list.coin-or.org/mailman/listinfo/ipopt <http://list.coin-or.org/mailman/listinfo/ipopt>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20170212/0c16502b/attachment.html>

More information about the Ipopt mailing list