ラピッドアクセラレータモードでコンパイルを回避する方法について
11 views (last 30 days)
Show older comments
Ryunosuke
on 22 Aug 2023
Commented: Ryunosuke
on 22 Aug 2023
外部パラメータを調整可能なSimulinkモデルを、ラピッドアクセラレータモードで実行する際の高速化方法についてご教示ください。
外部パラメータを調整可能なSimulinkモデルを作成し、実行ファイル化など特別な操作をすることなく、
Matlab/Simulinkの標準機能(追加ライブラリ無し)だけでラピッドアクセラレータモードで実行したいとします。
(パラメータスタディなどを目的に、繰り返し同じSimulinkモデルを呼び出すことを想定)
この時、Simulinkモデル上の変数を外部(Mファイルなど)からパラメータ変更して繰り返し計算をさせる場合、
Simulinkの実行毎に都度Simulink部分がコンパイルされてしまうことから、処理時間が非常に長くなってしまいます。
上記のように、もし外部からSimuklinkモデル内部のパラメータを繰り返し計算毎に変更した場合であっても、
ラピッドアクセラレータモードを使って演算速度を高速化しつつ、
コンパイルを回避して実行する方法があればご教示頂けますでしょうか?
R2012aを想定して質問しておりますが、以降のバージョンで機能追加などがあった場合、そちらもご教示頂ければ幸いです。
よろしくお願いいたします。
0 Comments
Accepted Answer
Toshinobu Shintai
on 22 Aug 2023
Edited: Toshinobu Shintai
on 22 Aug 2023
ラピッドアクセラレーターモードの再ビルドは、行われる条件があります。全てのパラメーターではありませんが、多くのパラメーターは、再ビルドをせずに調整できます。以下のドキュメンテーションにて説明されています。
簡単には、RapidAcceleratorUpToDateCheck をoffにすることで、不要な再ビルドを抑制できます。
また、 Simulink.BlockDiagram.buildRapidAcceleratorTarget を使用してビルドすると、再ビルドなくパラメーターを調整できます。ただし、本機能はR2012bで導入されたもので、R2012aでは動作しないと考えられます。
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!