Sun Grid Engine が提供する submit command - qsub のオプションに、アレイジョブを行うフラグをたてることで、parametric
study job として認識され、個々のジョブが投入されたホスト上に、Sun Grid
Engineが定義したJob No. ID の「環境変数」の属性も与えられるため、この環境変数をジョブスクリプト内で解釈して、必要な入力データを得る。
と言う感じで実行するイメージです。
問題は、投入はできるが、その後の管理はどうしようと言うことですね。例えば、一括で、ジョブアレイをキャンセルしたい、個別にキャンセルしたいと言うことがあります。これもSun
Grid Engine可能です。もう一つ、大事な点、この多数のアレイジョブの中で、どこかのホストが障害が起きてしまい、何番目のジョブが終了していないか調べる必要がでてくるはずです。後で説明しますが、この場合は、障害ホストから確実にジョブを移行して、最初から再実行する能力が必要ですね。(このような
situation は、人間が一番煩わしい) Sun Grid Engine は確実にジョブの再実行が可能です。
機能4 : パラレル環境管理
グリッド環境あるいはバッチシステム環境で、並列ジョブ環境を提供する機能です。具体的にどう言うことかと申しますと、例えば、MPI での並列計算では、必ず、どこのホストを使って、何 CPU 使うかと言うことが実行前に必ず認識しなければならないわけです。しかし、グリッド環境あるいはバッチシステム環境にしても使用するホスト/CPUは、グリッド/バッチ管理システムが決定するものですからユーザは予め分からない。そうすると、スケジューリングの結果として、どこのホストを使うかと言うことを並列ジョブスクリプトに教えないといけないことになります。実際は、環境変数で渡すのですが、これらのマネージメントする機能をパラレル環境管理と言います。