4.3. ジョブの種類

利用可能なジョブの種類#

本サービスで利用可能なジョブは、必要とするコンピューティングリソースやプログラムの種類などによって、下表のとおり分類されます。

分類方法 ジョブの種類 概要
ジョブの構造による分類
(ジョブモデル)
通常ジョブ 最もシンプルな構造のジョブです。1つのジョブスクリプトを実行し、それが終了するとジョブが終了します。
バルクジョブ 複数の同じ通常ジョブを同時に投入し、実行するジョブです。
ステップジョブ 実行順序や依存関係がある複数のジョブのまとまりです。
ワークフロージョブ ジョブ単位での実行制御(条件分岐や繰り返し)をする複数のジョブのまとまりです。
ジョブの実行形態による分類
(ジョブタイプ)
バッチジョブ 非対話的に実行されるジョブです。ジョブの標準出力、標準エラー出力はファイルになります。
会話型ジョブ ジョブ内で実行されるプログラムに対し、ユーザーが対話的な操作ができるジョブです。
並列度による分類 逐次ジョブ 逐次プロセス(単一スレッド、かつ、単一プロセス)を実行するジョブです。
並列ジョブ 複数スレッドや複数プロセス、またはその両方を使って並列処理をするプログラムを実行するジョブです。
必要とする計算機資源
(ノード資源)による分類
シングルノードジョブ 実行するために1ノードだけ必要とするジョブです。逐次ジョブはシングルノードジョブになります。
マルチノードジョブ 実行するために複数ノード必要とするジョブです。
ノード資源の割り当て方による分類 ノード割り当てジョブ
(ノード専有ジョブ)
物理的なノードを単位として、ノード資源がジョブに割り当てられます。
仮想ノード割り当てジョブ
(ノード専有ジョブ、ノード共有ジョブ)
ノード内のCPUコアとメモリをセットにした仮想ノードと呼ぶ単位で、ノード資源がジョブに割り当てられます。

用語に関する注記

本書では特に断りがない場合、「ノード」とはジョブを実行するコンピュートノード(計算ノード)を指します。

各システムで利用可能なジョブ種別と割り当て方式は以下の通りです。

ジョブ方式 Armシステム x86システム GPUシステム
通常ジョブ
バルクジョブ
ステップジョブ
バッチジョブ
会話型ジョブ
Singularity
ノード専有 する する しない
GPU専有 - - する