作者jmren (jm)
看板MATLAB
标题Re: [问题] 关於平行处理的次数计算
时间Thu Feb 16 18:52:56 2012
供你参考:
function [] = myFun()
delete([pwd '/*.paraTmp']);
parfor i=1:10,
pause(i+2);
a=dir([pwd '/*.paraTmp']);
fprintf('%d\n',numel(a)+1);
iSave(i);
end
function [] = iSave(i)
save([pwd '/' num2str(i) '.paraTmp']);
主要是parfor每跑完一回,就存一个暂存档~~
然後去看目前资料夹内有几个暂存档来判断目前跑到第几回
加不加pause看你,不加的话,是会列出像1 1 1 4 4 4 7 7 7 10之类的结果
但是加了,也无法保证列出来一定会是从1到10的结果(要停几秒很难判断XD)
Hope this helps you
※ 引述《hanyan (HaHaHan)》之铭言:
: 请教各位高手
: 假设我有一个很大量的回圈要使用平行处理
: 但我希望在run的过程中可以输出目前处理了几个
: 用for回圈的话就是宣告一个变数,每执行一次加一
: 但用parfor这个方法似乎不行
: 请教一下这有办法写吗?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.114.88.54