Parallelize instructions inside for

1 回表示 (過去 30 日間)
Thales
Thales 2017 年 12 月 28 日
コメント済み: Walter Roberson 2017 年 12 月 28 日
Is there a way to parallelize independent instructions within a for loop? The loops themselves aren't independent, so parfor is not really an option.
What I would like to do is something like:
for ii=1:N
% initial stuff
[...]
% instructions 1
[...]
% instructions 2
[...]
% instructions 3
[...]
% instructions 4
[...]
% more stuff
[...]
end
The instructions1, instructions2 etc are all independent instructions, so they should be able to parallelize. Each loop in the for, however, is not independent, so is not just change the for to a parfor. Is there any way to do it in Matlab?

回答 (1 件)

Matt J
Matt J 2017 年 12 月 28 日
You could make scripts for each set of instructions and launch them (within the loop) on different workers using the batch command.
  1 件のコメント
Walter Roberson
Walter Roberson 2017 年 12 月 28 日
Or parfeval() instead of batch()

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeStartup and Shutdown についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by