使用 batch 命令並行執行各種計算
要在 MATLAB 中使用多執行緒,可以使用 batch
命令。請注意,你必須安裝 Parallel Computing 工具箱。
例如,對於耗時的指令碼,
for ii=1:1e8
A(ii)=sin(ii*2*pi/1e8);
end
要以批處理模式執行它,可以使用以下命令:
job=batch("da")
這使得 MATLAB 能夠以批處理模式執行,並且可以在此期間使用 MATLAB 來執行其他操作,例如新增更多批處理。
要在完成作業後檢索結果並將陣列 A
載入到工作區中:
load(job, 'A')
最後,從 Home → Environment → Parallel → Monitor 作業開啟 monitor job gui
,並通過以下方式刪除作業:
delete(job)
要載入批處理函式,只需使用此語句,其中 fcn
是函式名稱,N
是輸出陣列的數量,x1
,...
,xn
是輸入陣列:
j=batch(fcn, N, {x1, x2, ..., xn})