I have installed Gurobi 9.1.1 on a supercomputer node with 64 Xeon processors. For the installation I used conda.

I access this node via ssh. When running "htop" I see that the process uses 1 core at 100% and very rare times (lets say 1% of the total time) it uses 1 or 2 extra cores for only a few seconds.

In fact, my laptop with Intel i5 runs the same process using all the cores and is 10 times faster than the "supercomputer".

I have asked the admin of the server if this situation may be the result of a configuration in the server. I am waiting for her answer.

I have already added m.setParams("Threads", 64). But, there is no change.

What could be the reason for this situation?

  • $\begingroup$ What parameters/configuration are you running? What version of gurobi etc. Some detail would help... $\endgroup$ Mar 18 at 23:23
  • $\begingroup$ Just to be sure: This problem occurs in the branch-and-bound tree exploration phase? Do you use callbacks? $\endgroup$
    – Simon
    Jun 25 at 10:41

Add the following line to your Python script:

m.setParam('Threads', 64)

In which m is your gurobipy model defined as follow:

import gurobipy as gb
m = gb.Model('NewModel')
  • $\begingroup$ I have tried with your suggestion with no success. I edited the question. $\endgroup$ Mar 19 at 15:14
  • 2
    $\begingroup$ Let's wait for the admin's reply. If it is not the configurations of the supercomputer, you need to try contacting Gurobi to check if your license is compatible with multi-processing. Although AFAIK Gurobi uses the maximum available number of cores during the solving process. $\endgroup$ Mar 19 at 15:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.