フィルターのクリア

How to automatically choose to compute for or parfor loops

1 回表示 (過去 30 日間)
Felix Lauwaert
Felix Lauwaert 2015 年 8 月 21 日
コメント済み: Felix Lauwaert 2015 年 8 月 21 日
Hi,
I wonder if there's a way to specify if I want to compute with a normal for or with a parfor.
What I don't want is to make a switch with two cases (case 1 --> parfor; case2 --> for;) because what's inside the loop is quite long so I don't want to copy/paste so many code lines and it's not 100% necessary to make this choice automatic. But sometimes I have to calculate few inputs and sometimes a lot of them.
EDIT: I guess I can make two functions: 1 for looped and another parfor looped, but is there any other option?

採用された回答

Sean de Wolski
Sean de Wolski 2015 年 8 月 21 日
You can use this syntax for parfor
parfor (loopvar = initval:endval, M); statements; end
Where M is dynamically determined. If it's zero, then this loop will run serially.
  4 件のコメント
Sean de Wolski
Sean de Wolski 2015 年 8 月 21 日
編集済み: Sean de Wolski 2015 年 8 月 21 日
Also, you can turn off the auto start of the pool in preferences so it never starts without you explicitly telling it to.
And, if startup is the cost you don't want to wait for, consider boosting the idle timeout to longer and just keep the pool open.
Felix Lauwaert
Felix Lauwaert 2015 年 8 月 21 日
OK, thanks!

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by