#1326: running loopcontrol on strange number of threads fails
Reporter:Roland Haas
Status:new
Milestone:
Version:
Type:bug
Priority:minor
Component:EinsteinToolkit thorn

Comment (by Erik Schnetter):

Setting these variables is fine. Setting the other variables (CACTUS_...) only allows Cactus to check whether things actually worked out as intended; they are only used for checking.

If you set OMP_NUM_THREADS=4 and expect there to be one thread per core, and Cactus later thinks it’s running on 12 cores, then something went wrong. Did you look at the output of omp_max_threads()? Did you environment variable actually make it to Cactus? Did you actually start one job with 12 processes, or accidentally 12 individual processes that know nothing about each other? Did the queuing system get confused and set up a cgroup with a different number of cores? Lots of things can go wrong.

The error message might come from LoopControl trying to determine how to split 4 threads of 12 cores. The resulting 1/3 threads per core might have caused the problem (although it shouldn’t).

--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/1326/running-loopcontrol-on-strange-number-of