[Ipopt] Ipopt parallelism

Anthony D. Kelman kelman at berkeley.edu
Sun Feb 12 04:06:41 EST 2017

MKL and openblas also look at OMP_NUM_THREADS. Do you know which library
you're actually using?

On Feb 12, 2017 1:04 AM, <gio.srt at gmail.com> wrote:

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> 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> 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> 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
>> 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/178554cf/attachment.html>

More information about the Ipopt mailing list