作者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