システムの紹介 各種手続き 使い方と注意事項 アプリケーション一覧 講習会情報 FAQ
HOME > 使い方と注意事項 > 計算サービス

計算サービスの使い方と注意事項

バッチジョブの投入

バッチジョブを投入するためには、まずPBSへの指示文やタスク(プログラムまたはコマンド)が書かれたジョブスクリプトを作成します。バッチジョブを投入するには、ユーザは次の通り入力します。

uva% qsub "ジョブスクリプト"

以下に例を示します。

uva% qsub test.qsub
571.uvaa

上記のように、qsub コマンドを実行すると、そのジョブに対して PBS が jobID と呼ばれる ID を付与します。その後、この jobID を指定することで、投入したジョブに対するステータス情報の表示や各種ジョブに対する制御を行うことが可能になります。

PBSへの各種指示は、バッチコマンドqsubの引数として指定することも可能です。

uva% qsub -q SMALL -N JOB -m abe -j oe test.qsub

PBSへの指示文と異なる指示がqsubの引数として指定された場合には、引数の内容が優先されます。

 

ジョブスクリプトの作成

ジョブスクリプトの各行は、文字列の先頭が空白文字ではなく、先頭の文字列が #PBS と一致する場合に、qsub への指示として処理されます。

1行目: #!/bin/csh 
2行目: #PBS -q SMALL
3行目: #PBS -N JOB
4行目: #PBS -m abe
5行目: #PBS -j oe
6行目:
7行目: cd ~user-name/  	
8行目: ./a.out

1行目: ジョブスクリプトがCシェルスクリプトであることを示すとともに、計算処理に必要な設定を読み込むために、1行目はこのように記述してください。
2行目: -q オプションで、投入するキュー名を指定します。
3行目: -N オプションで、バッチのジョブ名を指定します。
4行目: -m オプションでメール送信を指示します。メール送信のタイミングは、異常終了時(a)、ジョブ開始時(b)、ジョブ終了時(e)が指定できます。
5行目: -j オプションで標準出力と標準エラー出力をまとめて標準出力に出力します。
6行目: 空白行は何も行いません。任意の空白行を挿入することが可能です。
7行目: プログラムの置かれたディレクトリへ移動します。
8行目: プログラムを実行します。

また、以下の例では、システムリソースに対する制限のあるサンプルを説明します。

1: #!/bin/csh 
2: #PBS -q MEDIUM
3: #PBS -l walltime=360:00:00
4: #PBS -l cput=240:00:00
5: #PBS -l ncpus=2
6: #PBS -l mem=12gb
7:
8: cd $PBS_O_WORKDIR
9: ./a.out

3行目: -l オプションで、システムリソースの制限を示します。walltimeは、ジョブが実行状態にある場合の実際の時間(経過時間)の最大値です。この例では、360時間となっています。
4行目: cput は、ジョブによって使用されるCPU時間の最大値です。この例では、240時間となっています。
5行目: ncpus は、ジョブに要求されたプロセッサ数です。
6行目: mem は、ジョブに割り当てられる最大物理メモリ容量です。単位は、バイト数またはワード数で指定します。
7行目: 空白行は何も行いません。
8行目: qsubコマンドを実行したディレクトリ($PBS_O_WORKDIR)に移動