主要内容

このペ,ジの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

並列ビルドを使用した参照モデルのビルド時間の短縮

大きなモデル参照階層を含むモデルの場合は,参照モデルを並列にビルドしてコード生成とコンパイルにかかる時間を短縮できます。并行计算工具箱™ソフトウェアを使用して,MATLAB®ワカの並列プルに参照モデルのコド生成とコンパルを分散できます。MATLAB并行服务器ソフトウェアもンストルされている場合,コド生成とコンパルをMATLAB并行服务器構成内のリモ,トワ,カ,に分散できます。

参照モデルの並列ビルド

参照モデルを並列ビルドするには,次のようにします。

  1. モデルの階層構造の最上位モデルで[コンフィギュレーションパラメーター]ダイアログボックスを開きます。

  2. [並列モデルの参照ビルドを有効化]チェックボックスをオンにします。

  3. MATLABワーカーごとに,クライアントのMATLAB環境と一貫性のあるMATLAB環境を設定できます。[ビルドに対するmatlabワ,カ,初期化]ドロップダウンリストで,次のいずれかの値を選択します。

    • なし——仿金宝app真软件®は,ワ,カ,を初期化しません。

    • ベスワクスペスをコピSi金宝appmulinkは,ベ,スワ,クスペ,スを各MATLABワ,カ,にコピ,します。

    • 最上位モデルの読み込み——S金宝appimulinkは,MATLABワ,カ,に最上位モデルを読み込みます。

  4. コマンドラインまたは仿真金宝app软件エディターのコードパースペクティブからモデルをビルドします。

    • コマンドラ电子邮箱ン—たとえば,slbuildを使用します。ビルドプロセスにより,コマンドウィンドウにビルドログメッセ,ジが表示されます。

    • 金宝appSimulinkエディタ,のコ,ドパ,スペクティブ——[ビルド]ボタンをクリックします。ビルドプロセスでは,診断ビュ,ア,にビルドログメッセ,ジが表示されます。

      并行计算工具箱の並列基本設定[並列プ,ルを自動的に作成する]が選択されている場合,matlabワ,カ,の並列プ,ルが自動的に起動します。詳細にいては,並列基本設定の指定(并行计算工具箱)を参照してください。

      モデルをビルドするときに,MATLABワーカーの並列プールが実行されていない場合,MATLABでは,既定のクラスタープロファイルを使用してワーカーの並列プールが自動的に開きます。ワーカークラスターの既定の動作を変更するには,クラスタープロファイルのプロパティを変更できます。並列の基本設定を変更していない場合,既定のプロファ当地的です。並列の基本設定を使用して,クラスターへのスケールアップ,プールの自動作成,推奨されるワーカー数などの並列動作を制御します。詳細にいては,クラスタの検出とクラスタプロファルの使用(并行计算工具箱)を参照してください。

      並列計算の一般情報の詳細にいては,自動並列サポトを使用したmatlab関数の実行(并行计算工具箱)を参照してください。

参照モデルの並列ビルドのモニタ

[ビルドのステ,タス]ウィンドウで,次の操作を実行できます。

  • モデルの階層構造の全体的なビルドの進行状況の表示。

  • モデルの階層構造内の個々のモデルのビルドステ,タスの表示。

  • 並列ビルドプロセスのキャンセル。

メモ

[ビルドステ,タス]ウィンドウは,モデルの階層構造の並列ビルドのみサポ,トします。シリアルビルドに[ビルドステ,タス]ウィンドウを使用しないでください。

[ビルドステ.タス]ウィンドウを開くには,次のラ@ @ンコマンドのいずれかを使用します。

  • coder.buildstatus.open ('模型”)

  • slbuild ('模型”,……“OpenBuildStatusAutomatically”,真的)

  • slbuild ('模型”、“StandaloneCoderTarget”,……“OpenBuildStatusAutomatically”,真的)

この例は,モデルの階層構造のビルドプロセスの監視方法を示しています。階層で,rtwdemo_parabuild_a_1は,rtwdemo_parabuild_b_1rtwdemo_parabuild_b_2,およびrtwdemo_parabuild_b_3を参照します。

  1. Src_dir =…fullfile (matlabroot“工具箱”,“环球套票”、“rtwdemos”);if exist(fullfile('.','myTempFolder'),'dir') rmdir('myTempFolder','s') end mkdir myTempFolder copyfile(fullfile(src_dir,'rtwdemo_parabuild_a_1.slx'),…“myTempFolder”);拷贝文件(fullfile (src_dir rtwdemo_parabuild_b_1.slx),…“myTempFolder”);拷贝文件(fullfile (src_dir rtwdemo_parabuild_b_2.slx),…“myTempFolder”);拷贝文件(fullfile (src_dir rtwdemo_parabuild_b_3.slx),…“myTempFolder”); cd myTempFolder

  2. 最上位モデルを開きます。

    open_system(“rtwdemo_parabuild_a_1”)

  3. モデルの依存関係をモデル依存関係アナラ▪▪ザ▪▪で表示します。[モデル化]タブで,[設計]セクションの一番右にある矢印をクリックします。次に,[システム設計]で,[依存関係アナラaapl . aapl . cn]をクリックします。

  4. モデルの階層構造の並列ビルドを開始し,[ビルドステ.タス]ウィンドウを開きます。

    slbuild(‘rtwdemo_parabuild_a_1’,‘OpenBuildStatusAutomatically’,真的)

    [ビルドステータス]ウィンドウには,コードジェネレーターがモデルの階層構造を通じて動作するときに,モデルのビルドの進行状況全体とビルドステータスが表示されます。

次の表で,[ステ,タス]列の値にいて説明します。

ステ,タス 説明

ブロック済み

ビルドが依存関係によってブロックされているため,コードジェネレーターはモデルのビルドをスケジュールできません。たとえば,子モデルのビルドは完了しません。

スケジュ,ル済み

並列ビルドで,コードジェネレーターは,ビルドが依存関係にブロックされていないときにモデルのビルドをスケジュールします。モデルのビルドのステ,タスは,並列プ,ルワ,カ,が使用可能になるまで计划です。

ビルド中

モデルはワ,カ,でビルド中です。

完了

モデルがエラ,なしでビルドされると,ステ,タスは完成に変わります。

エラ

モデルのビルドが失敗すると,ステ,タスは错误に変わります。

最新

現在生成されているコ,ドは最新であるため,モデルのコ,ド生成は不要です。

キャンセル中

[ビルドのキャンセル]ボタンをクリックすると,ビルドプロセスは未完成のビルドのステ,タスを取消に変更します。

キャンセル済み

キャンセル処理は完了しました。

[経過時間]列には,階層内のモデルのビルド時間が示されます。合計のビルド時間を短縮するには,モデルの依存関係と共に参照モデルのビルド時間を解析します。たとえば,次を検討します。

  • 参照モデルの階層構造の再構成。

  • 並列プ,ル内のワ,カ,数の増加。

参考

||

関連するトピック