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.

回答(1 个)

Siddharth Sundar
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.
  1 个评论
Evan
Evan 2014-10-17
编辑:Evan 2014-10-17
What I'm asking is a little different than what you're answering. Regardless of what I use the threads for (e.g. parpool workers), what I'm asking is how I should make the slurm resource request.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Parallel Computing Fundamentals 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by