parfor
-循环减少分配这两个例子表明parfor
-循环使用reduce赋值。减少是一个循环迭代的累积。左边的例子使用了x
在循环的10次迭代中积累一个总和。右边的例子生成了一个串联数组,1:10
.在这两个例子中,迭代在worker上的执行顺序并不重要:当worker为每个迭代计算单个结果时,客户端正确地积累并组装最终的循环结果。
x = 0;parforx = x + I;结束x x = 55 |
x2 = [];n = 10;parforI = 1:n x2 = [x2, I];结束x2 X2 = 1 2 3 4 5 6 7 8 9 10 |
如果循环迭代以非确定性序列操作,则您可能期望右边示例中的连接序列是非连续的。然而,MATLAB®识别连接操作并产生确定的结果。
下一个尝试计算斐波那契数的示例是无效的parfor
的元素的值f
在一次迭代中依赖于的其他元素的值f
在其他迭代中计算。
f = 0 (50);f (1) = 1;f (2) = 2;parforN = 3:50 f(N) = f(N -1) + f(N -2);结束
当你完成了你的循环示例,清空你的工作区并删除你的并行工作者池:
明确的删除(gcp)