physical vs. logical core allocation for Matlab in slurm
3 views (last 30 days)
Show older comments
I'm a user on a slurm cluster which is configured to consider each physical core to have two CPUs for allocation (via hyperthreading). Matlab generates up to one thread per physical core, so would it be appropriate for me to request two CPUs per task/parpool worker, even though I'll only be generating half that number of threads? I think that would be against the cluster policy, but it seems like it would be in my own best interest, and not wasting resources if Matlab is fully loading the cores.
0 Comments
Answers (1)
Siddharth Sundar
on 15 Oct 2014
For optimal performance, I would say that you should have one worker per physical core. Even though you have hyperthreading enabled, the number of physical cores still remains the same (one) while the number of logical cores is now two (in your case). Therefore, there would not be too much of an improvement in performance even if you were to use as many workers as the number of logical cores, because the number of physical cores still remains constant.
See Also
Categories
Find more on Parallel Computing Fundamentals in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!