このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
複数のシミュレーションのセットを実行する場合,それらを並列プール内の複数のMATLAB®ワーカー上で並列実行できます。複数のシミュレーションを実行するには,parsim
、“RunInBackground”
オプションをオンにしたparsim
,またはbatchsim
を使用できます。
フローチャートでは,parsim
、RunInBackground
をもつparsim
およびbatchsim
を使用した複数のシミュレーションの実行の違いを示します。
parsim
およびbatchsim
コマンドは,并行计算工具箱™ライセンスを使用して,シミュレーションを並列実行します。parsim
は,並列プールが作成できない場合または并行计算工具箱ライセンスが利用できない場合,シミュレーションを逐次実行します。batchsim
コマンドは,并行计算工具箱ライセンスがないと実行できません。
parsim
ワークフロー複数のシミュレーションを実行するために并行计算工具箱でparsim
コマンドを使用すると,並列プールが自動的に設定され,シミュレーションが並列実行されます。クライアントは常にMATLABワーカーに関連付けられています。
Parsim
ワークフローモデルへの変更を指定するために金宝app仿真软件。SimulationInput
オブジェクトの配列在
を作成します。
複数のシミュレーションの実行に必要な1回限りの設定を指定します。SetupFcn
およびTransferBaseWorkspaceVariables
を使用して,並列ワーカー上で設定を実行します。
parsim(中)
を実行して,これらの複数のシミュレーションを並列実行します。並列プールが存在しない場合,parsim
が作成します。parsim
は既定の設定を使用します。
parsim(“SimulationManager”,“上”)
のようにparsim
の“SimulationManager”
引数を“上”
に設定して,シミュレーションマネージャーを開くことができます。シミュレーションマネージャーにより、実行しているシミュレーションを監視し、シミュレーションの出力が準備できるとこれにアクセスできます。シミュレーション マネージャーによって、ワーカー上で実行しているシミュレーションに関する多数の情報が得られます。詳細については、シミュレーションマネージャーを参照してください。
すべてのシミュレーションが完了すると,金宝app仿真软件。SimulationOutput
オブジェクトの配列が得られます。
制限
MATLABセッションを閉じると,ワーカー上のシミュレーションが停止し,部分的な結果を取得できません。
RunInBackground
ワークフローでのparsim
モデルへの変更を指定するために金宝app仿真软件。SimulationInput
オブジェクトの配列在
を作成します。
複数のシミュレーションの実行に必要な1回限りの設定を指定します。SetupFcn
およびTransferBaseWorkspaceVariables
を使用して,並列ワーカー上で設定を実行します。
parsim(“RunInBackground”,“上”)
のようにRunInBackground
オプションを“上”
に設定してparsim
を実行します。“RunInBackground”
オプションを“上”
に設定してシミュレーションを非同期で実行します。これにより,MATLABコマンドプロンプトを利用し続けることができ,他のタスクでの作業が可能です。
“RunInBackground”
オプションを“上”
に設定すると,parsim
は金宝appSimulink.Simulation.Future
オブジェクトを返します。このオブジェクトをポーリングして,シミュレーションのステータスの確認,シミュレーション完了時の出力の取得またはシミュレーションのキャンセルを行うことができます。詳細については,金宝appSimulink.Simulation.Future
を参照してください。
制限
MATLABセッションを閉じると,ワーカー上のシミュレーションが停止し,部分的な結果を取得できません。未来
オブジェクトが消去されると,その後,シミュレーションの結果にアクセスできなくなります。
未来
オブジェクトでfetchNext
メソッドループをシミュレーションマネージャーと共に使用すると,未来
オブジェクトの取得で競合が発生します。完了したシミュレーションの出力を取得するには,fetchNext
ネクストループまたはシミュレーションマネージャーのいずれかを使用します。
batchsim
ワークフローバッチワークフローは通常,MATLABワーカー上でシミュレーションを実行するジョブを送信し,その後それらのシミュレーションの結果にアクセスすることを意味します。シミュレーションをバッチで実行する場合,シミュレーションの実行を計算クラスターにオフロードします。バッチ処理の詳細については,シンプルなバッチ処理(并行计算工具箱)を参照してください。
モデルへの変更を指定するために金宝app仿真软件。SimulationInput
オブジェクトの配列在
を作成します。
複数のシミュレーションの実行に必要な1回限りの設定を指定します。SetupFcn
およびTransferBaseWorkspaceVariables
を使用して,並列ワーカー上で設定を実行します。
クラスターまたはデスクトップバックグラウンドで実行するには,batchsim
を呼び出し,シミュレーションの実行をオフロードします。batchsim
では,parsim
コマンドおよび批处理
コマンドと互換性のある大部分の引数を使用できます。詳細については,batchsim
を参照してください。
batchsim
を使用して,シミュレーションをMATLABワーカーにオフロードしました。バッチジョブを複数のワーカーで実行するには,batchsim(“池”,N)
のように,ジョブの並列プールに作成するワーカーの数を指定する整数であるプールサイズN
を指定します。少なくともN + 1
個のワーカーがクラスターで利用できなければなりません。プールサイズが指定されていない場合,batchsim(中)
は,既定のクラスタープロファイルで指定されたクラスター内の単一のワーカー上でシミュレーションを実行します。
メモ
并行计算工具箱ライセンスが利用できない場合に,プールサイズを指定して使用すると,batchsim
エラーが発生します。
batchsim
がシミュレーションを計算クラスターにオフロードすると,バッチジョブの処理中に他のタスクを実行したり,クライアントのMATLABを閉じて,バッチジョブに後でアクセスしたりできます。
バッチジョブの送信時に,batchsim
はジョブオブジェクトを返します。これには,後でバッチジョブにアクセスする際に使用できるジョブIDおよびその他の情報が含まれています。このジョブに再度アクセスすると,シミュレーションの進行状況を確認できます。
クライアントセッションがワーカーに関連付けられていないため,ジョブが完了しないと出力にアクセスできません。
batchsim
では,シミュレーションマネージャーを使用してシミュレーションを監視できません。バッチジョブの場合,ジョブがキューに入っているか,処理中か,完了しているかを示すバッチジョブモニターを使用できます。詳細については,ジョブモニター(并行计算工具箱)を参照してください。
parsim
|batchsim
|批处理
(并行计算工具箱)|parcluster
(并行计算工具箱)|getSimulationJobs
|仿真管理器