首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Matlab中我可以使用多少个工作者来进行并行化?

在Matlab中我可以使用多少个工作者来进行并行化?
EN

Stack Overflow用户
提问于 2021-11-24 03:00:52
回答 1查看 30关注 0票数 1

我正在尝试使用并行化,我有一个简短的问题。

我看到另一篇文章说:“我从另一篇文章中看到,‘所有比R2013b更新的版本都可以通过并行计算工具箱在本地机器上使用多达512个工作者(CPU核心)。’

但是,我不确定我的计算机可以使用多少个工人。

我有32个核心(64个逻辑核心)和128 GB的内存。

这是否意味着我可以使用32个工人?或者我可以使用64个工作进程,因为我有64个逻辑核心?

或者“工作进程的数量”是独立于内核的数量的?在并行首选项中,我认为我可以写任何我想要的数字作为工作人员的数量,所以我有点困惑……

我在“并行首选项”中将36作为工作者的数量,但当我运行代码时,它显示工作者的数量是32。所以我猜Matlab会自动选择最大的工作进程数…?

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2021-11-24 07:37:48

并行计算工具箱使用的默认工作进程数是计算机上的物理核心数,因为这通常会提供最佳性能。在某些情况下,不同数量的工作人员可以为您提供更好的性能,这就是为什么您能够修改此首选项。

例如,如果您的工作进程需要大量内存,那么您最好运行更少的工作进程,而不是拥有内核。

相反,对于某些工作负载,您可能会发现您可以运行更多的worker,但仍然可以获得良好的性能(尽管我认为这样的情况比较少见)。

请注意,"Preferred number of workers in a parallel pool"首选项与您在Cluster Profile Manager中指定的NumWorkers属性是分开的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70090256

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档