原始代码是这样的:
for i = 1 : size(H, 1)
for j = 1 : size(H, 2)
H{i,j} blabla
我试图将它改编成这样的并行代码:
parfor ind = 1 : numel(H)
[i, j] = ind2sub(ind);
H{i,j} blabla
这会生成一个错误,说parfor
由于 H{i,j} 而无法运行。
那么这里的错误是什么?以及如何将嵌套循环调整为 parfor?
一种可能的解决方案是
for i = 1 : size(H, 1)
parfor j = 1 : size(H, 2)
H{i,j} blabla
但我怀疑在另一个循环中使用 parfor 会增加开销,parfor
从而导致额外的计算时间。