2015-09-16 109 views

回答

3

Matlab-r2014b中的Matlab編碼器是否支持parfor?

是的,你參考文獻中提供的列表告訴你它是受支持的。

這是否意味着沒有減速?

是的。你從字面上引用「它被當作for循環」。

所以在嚴格意義上parfor被支持,因爲它不會拋出錯誤。但是,它的處理方式與平行化工具箱未安裝時的MATLAB相同,正如普通的for循環一樣。因此,您可以編譯包含parfor循環的MATLAB代碼,但它們將被視爲串行for循環。

請注意,上述僅適用於功能塊;正如@Edric指出的那樣:

parfor ... ...在生成的MEX函數或共享內存多核平臺上並行運行的C/C++代碼中創建一個循環。

http://www.mathworks.com/help/coder/ref/parfor.html

你可以看到這樣的信息::

+0

謝謝,我已編輯我的問題 – user3285148

+0

嗯,你基本上偷了我的編輯,並改變了1個字。但是,現在看起來不錯。 – Adriaan

+2

只有在「MATLAB功能塊」*的情況下才是正確的*。 – Edric

4

循環只有在一個"MATLAB Function" block

如果檢查MATLAB編碼器parfor參考頁上下文中運行,以串行方式

parfor ... ...創建一個生成循環ated MEX函數或在共享內存多核平臺上並行運行的C/C++代碼。