一度に大量のジョブを投入し、ジョブごとに入力ファイル/実行ファイルを変更したい
ファイル名に連続した数値が含まれている場合、パラメトリックジョブという投入方法で、一度に大量のジョブを投入できます。
パラメトリックジョブでは、ジョブスクリプト内の"$PBS_SUBREQNO"環境変数に、-tで指定した数値(下記の例では1から5までの数値)が格納されます。
qsubすると同時に5本のジョブが投入され、a.outに対してそれぞれ異なる入力ファイル(下記の例ではinput1からinput5)が設定されます。
ジョブスクリプト例
1 2 3 4 |
#PBS -q OCTOPUS #PBS -l elapstim_req=0:30:00,cpunum_job=24 cd $PBS_O_WORKDIR ./a.out input$PBS_SUBREQNO |
投入例
1 2 |
qsub -t 1-5 jobscript.sh |
qstatの表示例:パラメトリックジョブの場合、1回のqsubにつき1件分の表示となります
1 2 3 4 |
RequestID ReqName UserName Queue Pri STT S Memory CPU Elapse R H M Jobs --------------- -------- -------- -------- ---- --- - -------- -------- -------- - - - ---- 123456[].oct nqs username OC1C 0 QUE - - - - Y Y Y 1 |
sstatの表示例:-tで指定した数値分だけ表示されます
1 2 3 4 5 6 7 8 |
RequestID ReqName UserName Queue Pri STT PlannedStartTime --------------- -------- -------- -------- ----------------- --- ------------------- 123456[1].oct nqs username OC1C 0.5002/ 0.5002 QUE - 123456[2].oct nqs username OC1C 0.5002/ 0.5002 QUE - 123456[3].oct nqs username OC1C 0.5002/ 0.5002 QUE - 123456[4].oct nqs username OC1C 0.5002/ 0.5002 QUE - 123456[5].oct nqs username OC1C 0.5002/ 0.5002 QUE - |