For CPU-bound problems (it is usually our case, unless we have cache memory problem see issue #27 ) hyperthreaded processors do not account for any speed-up (therefore not worth having as many workers).
Currently the function cpu.getprocessors() (used to initialize the number of workers) returns all processors x 2 if hyperthreading is availabe in cpu. This should be taken into account, and if hypertrheading is availabe, halve the number of workers.
For CPU-bound problems (it is usually our case, unless we have cache memory problem see issue #27 ) hyperthreaded processors do not account for any speed-up (therefore not worth having as many workers).
Currently the function cpu.getprocessors() (used to initialize the number of workers) returns all processors x 2 if hyperthreading is availabe in cpu. This should be taken into account, and if hypertrheading is availabe, halve the number of workers.