Dear Gurobi Support Team,
I am using Gurobi to solve a mixed integer linear programming problem with ~10^7 continuous variables and ~10^6 binary variables. I am trying to figure out the best parameters for the solver, since I have tried the cluster setting of 128 cores (on one single node) with each core having 4 G of RAM while still getting an out-of-memory error on the cluster. That setting is approaching the maximum amount of memory that I can access.
What I have now tried is setting Methods = 2 and Cuts = 2, while Threads = 128, but I am not entirely sure if I should set Threads as many as my core number. From what I understand from Threads, the number of Threads seems to characterize the number of parallel computation, such as the different branches of branch-and-bound algorithm. Therefore, the more threads I set, the more parallel branches could be computed at once, and likely the sooner the optimal objective would be found. However, the more threads, the more requirement of memory, according to the documentation. How should I actually set the Threads, and if you could be so kind as to help me, how are the threads related to the cores and their RAM space on the cluster?
Additional information: I am using python and pyomo (python-based optimization language) to build the model, if that helps.
Below are the log file that I get during a model run:
And afterwards the job was killed on the cluster due to the out-of-memory problem.
Thanks a lot in advance!
Please sign in to leave a comment.