menu

ジョブスケジューリングとバッチジョブ

本学の並列計算機は,ジョブスケジューリング方式を採用しています.

ユーザが個々の計算,実験に必要な実行ファイル,データ等をまとめてバッチジョブとして登録しておくことで,計算リソースが空き次第自動的に実行されるシステムをジョブスケジューリングシステムといいます.

このような計算機はログインノード計算ノードに分かれており,ユーザはログインノードで計算用の実行ファイルやデータを準備し,ジョブスケジューラに投入します.

ジョブスケジューリングの基本

ジョブスケジューリングシステムは,基本的に以下の手順で利用します.

1. ジョブスクリプト作成
計算ジョブの実行に必要な実行ファイル,データ,設定ファイル等をまとめ,定型のジョブスクリプトに記述する

2. ジョブ投入
作成したジョブスクリプトをジョブスケジューラに投入する.
投入する個数に制限はない.入力データの異なる計算ジョブを多数投入しておくこともできる.

3. ジョブ実行
計算ジョブは,投入されたシステムで実行に必要なリソース(CPU, Memory,Node等)が確保され次第, 自動的に実行される

ジョブ実行ルール

スケジューラに投入されたジョブは,基本的に以下のルールに添って実行されます.

・基本的に,少ないリソースで実行できるキューの優先度がより高く設定されている

・高優先度のキューに投入されたジョブから順次実行される

・同じキューの中では,先に投入されたジョブから順次実行される

・(リソース不足等で)一定時間実行されなかったジョブは,最優先として実行される.
この場合,最優先ジョブを実行させるリソースを確保するために,その他のジョブが一時的に開始されなくなることがある.