主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

labindex

(不推荐)spmd 代码块中当前工作单元的索引

不推荐使用 labindex。请改用 spmdIndex。有关详细信息,请参阅版本历史记录

说明

id = labindex 返回当前在 spmd 代码块中执行该函数的工作单元的索引。当工作单元运行 spmd 代码块或通信作业开始执行时,每个工作单元都会分配一个唯一的索引。labindex 的值是 1numlabs 之间的整数。

在给定并行池的持续时间内,工作单元在每个 spmd 代码块内获得相同的 id

示例

示例

全部折叠

labindex 代码块和 spmd 循环中查看 parfor

p = parpool('local',2);
spmd
    labindex
end
Worker 1: 
         1
  
Worker 2: 
        2

使用相同的双工作单元池 p

parfor a=1:4
    [a,labindex]
end
ans =
     3     1
ans =
     2     1
ans =
     1     1
ans =
     4     1

提示

spmd 代码块中,因为您可以单独访问所有工作单元并控制在它们上执行的操作,所以每个工作单元都有一个唯一的 labindex

然而,在 parfor 循环内部,labindex 在所有迭代中始终对所有工作单元返回值 1。

版本历史记录

在 R2006a 之前推出

全部折叠

另请参阅