【问题标题】:Does Matlab Parallel Computing Toolbox only assign 1 worker for one core? [duplicate]Matlab Parallel Computing Toolbox 是否只为一个内核分配 1 个工作人员? [复制]
【发布时间】:2015-08-27 18:44:49
【问题描述】:

您好,我正在使用 matlab 并行计算工具箱进行并行计算。我的笔记本电脑是 2 核 4 线程,所以我假设该任务可以连接到 4 个作品?但是,当我输入命令“matlabpool open”时,只连接了 2 个工作人员。谁能告诉我如何指定要连接的确切工人数量,以便我可以将任务分配给工人数量多于核心数量,以提高计算效率?谢谢!

【问题讨论】:

  • 可以在每个物理核心上使用多个工作器,但您可能看不到任何效果。请参阅herehere 了解更多信息。
  • @horchler 我认为最大数量甚至可能取决于版本。我曾经遇到过限制为4,这就是为什么我认为它与核心数量有关。 R2012b 的本地池最多有 12 个,R2014a allows more
  • @horchler 附录:这有点棘手。要求 16 核给我“You requested a minimum of 16 workers, but only 12 workers are allowed with the Local cluster.”,但要求 12 给我“You requested a minimum of 12 workers, but the cluster "local" has the NumWorkers property set to allow a maximum of 4 workers
  • @AndrasDeak 谢谢!我的matlab是R2013b。我尝试了超过 12 名工人,它给了我以前的错误信息。我检查了集群配置文件,它说最大工作人员数是 12。而在 matlab R2014a 上,这个上限达到 512。我想我只是无法连接到 2013 版本上超过 12 个工作人员....

标签: matlab matlabpool


【解决方案1】:

您可以告诉 matlab 使用特定数量的工人,但它不会让您使用超过最大数量,这可能是 您的物理核心数 版本-和集群-依赖。 R2012b 允许在本地集群中使用 12 个 worker,R2014a allows more than 12

来自help matlabpool

...

matlabpool [poolSize]

...

matlabpoolmatlabpool OPEN 使用默认值启动工作池 具有由该配置文件指定的池大小的集群配置文件。你 也可以使用matlabpool OPEN <poolSize> 指定池大小,但请注意 大多数集群都有可以启动的最大进程数。

% Start a worker pool using the local profile with 2 workers:
matlabpool local 2

更新:

我玩了一会儿。在 R2012b 上要求 16 名工人给了我错误

您请求至少 16 个工作人员,但本地集群只允许 12 个工作人员。

这意味着这个版本不可能有更多的工人。但是,如果我用 12 个工人调用本地池,我会收到错误

您请求至少 12 个工作人员,但“本地”集群的 NumWorkers 属性设置为最多允许 4 个工作人员。运行一个 在比这更多的工作人员上通信作业(本地集群最多 12 个),增加 NumWorkers 属性的值 簇。本地集群的 NumWorkers 的默认值是本地机器上的核心数。

因此,您可能无法使用超过 12 个工作人员,具体取决于您的版本。如果您看到 latter 错误,您可以重新定义集群以允许更多内核。复制local 池:

mycluster=parcluster('local');
mycluster.NumWorkers=48;
matlabpool(mycluster,48);
...
matlabpool close;

【讨论】:

  • 谢谢安德拉斯!我可以再问一个问题:我使用的服务器似乎有 4 个处理器,每个处理器有 12 个内核。所以应该有 48 名并行计算的工作人员。但是当我启动matlabpool时,只连接了12个worker。是否可以将任务分配给所有 4 个处理器,以便 48 个工作人员可以同时工作?谢谢!
  • 我在@horchler 的评论指出核心数不是最大值后编辑了我的问题。我怀疑如果 matlab 不允许您手动使用超过 12 个内核(错误告诉您最大值为 12),那么您无能为力。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-30
  • 1970-01-01
  • 2014-03-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多