バッチ并列ジョブ実行
バッチジョブの実行
MATLAB®セッションのオフロードて别セッションでグラウンドでするために,スクリプト内で批
コマンドを使用ます。
スクリプトをするは次のよう入力します。
编辑mywave
matlabエディターで,
为了
ループを作成ます。为了i = 1:1024 a(i)= sin(i*2*pi/1024);结尾
ファイルをしてを闭じます。
matlabコマンドウィンドウで
批
コマンドをし,独立したたたワーカーワーカースクリプトをし。。。job = batch('mywave')
批
matlabををないため,计算の中に作业続行続行できできます。。。ジョブジョブジョブがががががまでまでまでまでまでするするするするするををを等待
を使用し。等待(工作)
ジョブの后结果を取得し表示することができます。
加载
コマンドによってでされ変数クライアントワークに転送され,そこでで结果ををことができことができことができ负载(工作,'一种')图(a)
ジョブがたらそのデータ永久に削除しその参照をワークワークスペースからから削除し
删除(工作)清晰工作
批
はコードワーカークラスターワーカー実行しが,プールは必要ではありません。
批
を使用て关数を実行でき。详细は,关数批
のリファレンスを参照し。。
并列プールのバッチジョブ実行実行
ジョブを机能并列プールでループ机能机能组み合わせるせることができますます。このこの例でででははは,,この2parfor
ループを作成ます。
スクリプトをするは,を入力します。
编辑mywave
matlabエディターで,
parfor
ループを作成ます。parfori = 1:1024 a(i)= sin(i*2*pi/1024);结尾
ファイルをしてを闭じます。
matlabで
批
コマンドをてを実行ますスクリプトでループに并列プールが使用さされるようようしししjob = batch('mywave',,,,'水池',3)
3,(バッチバッチ実行にににに)3つのににででループループ反复反复ををを评価するよう指定指定しててていますます。。したがっしたがっしたがってててて,,このはででではバッチバッチバッチバッチバッチバッチバッチバッチバッチローカルワーカーします次の図のに,,実行さされるれるれるれるれるれるセッションセッションセッションセッションセッション
结果をするは,を入力します。
等待(作业)加载(工作,'一种')图(a)
结果は同じに见えますが実行方法にににつのつの重要な违いがあります。
parfor
ループをし结果を累积するがが批
Matlabセッションセッションセッションにさ。。。ループの反复,,つつののワーカーワーカー同时実行されるのの一连ののワーカーに分散分散さ(
'水池'
とparfor
),ループただただつの実行さ场合高速でさされる可能がある。。
ジョブがたらそのデータ永久に削除しその参照をワークワークスペースからから削除し
删除(工作)清晰工作
现在のブラウザーのスクリプトバッチジョブとして実行実行
matlabスクリプトスクリプトスクリプトスクリプトバッチジョブます。にはは,ファイルののフォルダーをを参照し,,ファイルファイルして[バッチジョブスクリプト実行]を选択。ジョブはのプロファイル指定れてているクラスター上でで実行さされます。。次の次の脚本1.m
を実行メニューを示してい。。
ブラウザーからバッチ実行する际は,のワーカーワーカーをををつだけつだけ使用しします。このこのためparfor
ループまたはSPMD
が含まいる场合も,クラスターのワーカープールがが开くことことははありありありませんこうこうししたコードコードブロックはバッチバッチジョブにににれるれるのののワーカーワーカーワーカーワーカーワーカーワーカーワーカーワーカーワーカーでがある场合,并列プールのバッチジョブ実行実行で说明ようにコマンドラインからでき。。。
ブラウザーからをする场合は,,も开かます。。ジョブモニターモニターははスケジューラスケジューラスケジューラキューキュージョブジョブを追迹追迹できるできるできるツールツールツールですです。ジョブモニターを参照しください。