ジョブスクリプトの作成
ジョブスクリプトの各行は、文字列の先頭が空白文字ではなく、先頭の文字列が #PBS と一致する場合に、qsub への指示として処理されます。
1行目: #!/bin/csh
2行目: #PBS -q APC
3行目: #PBS -N JOB
4行目: #PBS -m abe
5行目: #PBS -j oe
6行目:
7行目: cd $PBS_O_WORKDIR
8行目: ./a.out
1行目: ジョブスクリプトがCシェルスクリプトであることを示すとともに、計算処理に必要な設定を読み込むために、1行目はこのように記述してください。
2行目: -q オプションで、投入するキュー名を指定します。
3行目: -N オプションで、バッチのジョブ名を指定します。
4行目: -m オプションでメール送信を指示します。メール送信のタイミングは、異常終了時(a)、ジョブ開始時(b)、ジョブ終了時(e)が指定できます。
5行目: -j オプションで標準出力と標準エラー出力をまとめて標準出力に出力します。
6行目: 空白行は何も行いません。任意の空白行を挿入することが可能です。
7行目: qsubコマンドを実行したディレクトリ($PBS_O_WORKDIR)へ移動します。
8行目: プログラムを実行します。
また、以下の例では、システムリソースに対する制限のあるサンプルを説明します。
1行目: #!/bin/csh
2行目: #PBS -q APC
3行目: #PBS -l select=1:ncpus=8:mem=12gb
4行目:
5行目: cd $PBS_O_WORKDIR
6行目: ./a.out
3行目: -l オプションで、システムリソースの制限を示します。
最初の select は、複数のノードを跨ぐような使い方でなければ、1 で構いません。ncpus は、ジョブに要求されたプロセッサ数です。
mem は、ジョブに割り当てられる最大物理メモリ容量です。単位は、バイト数またはワード数で指定します。
4行目: 空白行は何も行いません。
5行目: qsubコマンドを実行したディレクトリ($PBS_O_WORKDIR)に移動
6行目: プログラムを実行します。
|