physical vs. logical core allocation for Matlab in slurm
3 次查看(过去 30 天)
显示 更早的评论
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 个评论
回答(1 个)
Siddharth Sundar
2014-10-15
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.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Parallel Computing Fundamentals 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!