How to prevent using more threads than cores in Gurobi CloudAnswered
I'm evaluating Gurobi Instant Cloud (to make it transparent to my current installation with local license), but I'm wondering whether we are starting too many/too few threads on the cloud servers.
Our cloud environment is currently configured as:
Compute Servers = 1
Job Limit = 1
And our C code looks like this:
status = GRBsetintparam(GRBgetenv(m_model), GRB_INT_PAR_THREADS, 0);
Considering those settings:
- How many threads will be effectively run (suppose we use a c5.4xlarge machine, 8 cores/16 threads according to the specs)? What about if we set N instead of 0 (N <= 8)?
- Do those threads will be run in a single processor (understading as processor each execution thread in the CPU, not each core) (we certainly want to avoid this situation)? Or each thread will be run in a separate processor?
Thanks for your help.
1) Gurobi will use up to 16 threads on on a c5.4xlarge machine. If you set a thread count less than 16, Threads=N, Gurobi will use up to N threads.
2) In hyper-threaded machines such as a c5.4xlarge machine, there are two threads per core, managed by the operating system.0
Please sign in to leave a comment.