サイズ: 4753
コメント:
|
← 2025-06-19 09:51:38時点のリビジョン81 ⇥
サイズ: 12408
コメント:
|
削除された箇所はこのように表示されます。 | 追加された箇所はこのように表示されます。 |
行 2: | 行 2: |
== パッチジョブ == |
<<TableOfContents(3)>> == ジョブ環境 == '''バッチジョブ'''と'''インタラクティブジョブ'''により,計算サーバを利用することができます.本システムでは,ジョブスケジューラとしてPBS Professionalを採用しており,ジョブの送信,状況確認等はPBS Professionalのコマンドによって行います.対話的に処理を実行する場合やGUIアプリケーションを起動する場合は,インタラクティブジョブを投入してください.それ以外の場合は,実行スクリプトを準備しバッチジョブを投入してください.<<BR>> 本システムでサポートするジョブ利用形態は,Singularityコンテナ上でのジョブ利用のみとなります.特に指定しない場合,デフォルトのコンテナイメージが使用されますが,利用者が用意したSingularityコンテナを指定することも可能です.詳しくは"コンテナイメージの指定"の箇所を読んでください. == バッチジョブ == |
行 5: | 行 9: |
★qsubコマンドでのジョブ投入方法やqsubコマンドの主なオプションを記載する ==== サンプルスクリプト:Intel MPI - Intelコンパイラを使用する場合 ==== {{{ ### sample #!/bin/sh #PBS -q rchq #PBS -l nodes=1:ppn=16 MPI_PROCS=`wc -l $PBS_NODEFILE | awk '{print $1}'` cd $PBS_O_WORKDIR mpirun -np $MPI_PROCS ./a.out }}} * ジョブの投入先(eduq, rchq)はスクリプト内でも指定できます. ==== サンプルスクリプト:OpenMPI - Intelコンパイラを使用する場合 ==== {{{ ### sample #!/bin/sh #PBS -q rchq #PBS -l nodes=1:ppn=16 MPI_PROCS=`wc -l $PBS_NODEFILE | awk '{print $1}'` module unload intelmpi.intel module load openmpi.intel cd $PBS_O_WORKDIR mpirun -np $MPI_PROCS ./a.out }}} * ジョブの投入先(eduq, rchq)はスクリプト内でも指定できます. ==== サンプルスクリプト:GPGPUプログラムを利用する場合 ==== {{{ ### sample #!/bin/sh #PBS -l nodes=1:GPU:ppn=1 #PBS -q eduq cd $PBS_O_WORKDIR module load cuda-10.0 ./a.out }}} === ANSYS Multiphysicsジョブ === ==== シングルジョブ ==== 以下に,実行スクリプト例を示します. {{{ ### sample #!/bin/sh #PBS -l nodes=1:ppn=1 #PBS -q eduq module load ansys14.5 cd $PBS_O_WORKDIR ansys145 -b nolist -p AA_T_A -i vm1.dat -o vm1.out -j vm1 }}} *vm1.datは/common/ansys14.5/ansys_inc/v145/ansys/data/verifにあります. ==== 並列ジョブ ==== 以下に,実行スクリプト例を示します. 例:Shared Memory ANSYSを用いる場合 {{{ ### sample #!/bin/sh #PBS -l nodes=1:ppn=4 #PBS -q eduq module load ansys14.5 cd $PBS_O_WORKDIR ansys145 -b nolist -p AA_T_A -i vm141.dat -o vm141.out -j vm141 -np 4 }}} 例:Distributed ANSYSを用いる場合 {{{ ### sample #!/bin/sh #PBS -l nodes=2:ppn=2 #PBS -q eduq module load ansys14.5 cd $PBS_O_WORKDIR ansys145 -b nolist -p AA_T_A -i vm141.dat -o vm141.out -j vm141 -np 4 -dis }}} *vm141.datは/common/ansys14.5/ansys_inc/v145/ansys/data/verifにあります. === ANSYS HFSSジョブ === [[attachment:ansys-hfss-16.1-manual.pdf|ANSYS HFSS利用マニュアル]]に利用方法の詳細が説明されています。 そちらをご参照下さい。 === ANSYS CFXジョブ === ==== シングルジョブ ==== 以下に,実行スクリプト例を示します. {{{ ### sample #!/bin/sh #PBS -l nodes=1:ppn=1 #PBS -q eduq module load ansys14.5 cd $PBS_O_WORKDIR cfx5solve -def StaticMixer.def }}} *StaticMixer.defは/common/ansys14.5/ansys_inc/v145/CFX/examplesにあります. ==== 並列ジョブ ==== 以下に,実行スクリプト例を示します. {{{ ### sample #!/bin/sh #PBS -l nodes=1:ppn=4 #PBS -q eduq module load ansys14.5 cd $PBS_O_WORKDIR cfx5solve -def StaticMixer.def -part 4 -start-method 'Intel MPI Local Parallel' }}} *StaticMixer.defは/common/ansys14.5/ansys_inc/v145/CFX/examplesにあります. === ABAQUSジョブ === ==== シングルジョブ ==== 以下に,実行スクリプト例を示します. {{{ ### sample #!/bin/sh #PBS -l nodes=1:ppn=1 #PBS -q eduq module load abaqus-6.12-3 cd $PBS_O_WORKDIR abaqus job=1_mass_coarse }}} *1_mass_coarse.inpは/common/abaqus-6.12-3/6.12-3/samples/job_archive/samples.zipにあります. === COMSOL Multiphysicsジョブ === === GAUSSIANジョブ === サンプル入力ファイル(methane.com) {{{ %NoSave %Mem=512MB %NProcShared=4 %chk=methane.chk #MP2/6-31G opt methane 0 1 C -0.01350511 0.30137653 0.27071342 H 0.34314932 -0.70743347 0.27071342 H 0.34316773 0.80577472 1.14436492 H 0.34316773 0.80577472 -0.60293809 H -1.08350511 0.30138971 0.27071342 }}} ==== シングルジョブ ==== 以下に,実行スクリプト例を示します. {{{ ### sample #!/bin/sh #PBS -l nodes=1:ppn=1 #PBS -q eduq module load gaussian09-C.01 cd $PBS_O_WORKDIR g09 methane.com }}} ==== 並列ジョブ ==== 以下に,実行スクリプト例を示します. {{{ ### sample #!/bin/sh #PBS -l nodes=1:ppn=4,mem=3gb,pvmem=3gb #PBS -q eduq cd $PBS_O_WORKDIR module load gaussian09-C.01 g09 methane.com }}} === Patranジョブ === |
PBS Professional用の実行スクリプトを作成し,qsubコマンドで次のようにジョブを投入します. {{{ $ qsub -q キュー名 実行スクリプト名 }}} 例えば,研究用キューEduqにジョブを投入する場合は次のようにします. {{{ $ qsub -q Eduq 実行スクリプト名 }}} === qsubコマンドのオプション === 主なオプションを以下に示します. ||オプション ||使用例 ||意味 || ||-e ||-e filename ||標準エラー出力の内容を指定されたファイル名に出力する.-eオプションが指定されていない場合は,qsubコマンドが実行されたディレクトリ上に作成される.その際のファイル名は“ジョブ名.eジョブ番号”になる. || ||-o ||-o filename ||標準出力の内容を指定されたファイル名に出力する.-oオプションが指定されていない場合は,qsubコマンドが実行されたディレクトリ上に作成される.その際のファイル名は“ジョブ名.oジョブ番号”になる. || ||-j ||-j join ||標準出力,標準エラー出力を1個のファイルにマージするかしないかの動作を指定する.<<BR>>-j oe:標準出力に標準エラー出力をマージする<<BR>>-j eo:標準エラー出力に標準出力をマージする<<BR>>-j n: 標準出力と標準エラー出力をマージしない(デフォルト) || ||-q ||-q destination ||ジョブを投入するキューを指定する. || ||-l ||-l resource_list ||ジョブの実行に必要なリソース資源を指定する. || ||-N ||-N name ||ジョブ名を指定する(文字数は15文字まで).デフォルトはスクリプトでジョブが投入された場合は,スクリプトのファイル名となる.そうでない場合は,“STDIN”になる. || ||-m ||-m mail_events ||ジョブの状態をメールで通知する指定を行う.<<BR>>-m n:メールを送信しない<<BR>>-m a:異常終了時<<BR>>-m b:処理開始時<<BR>>-m e:処理終了時 || ||-M ||-M user_list ||メールを送信するメールアドレスを指定する. || ||-v ||-v SINGULARITY_IMAGE=<image> ||指定したSingularityイメージでジョブを実行. || ||-I ||-I ||インタラクティブ(対話型)ジョブを実行します. || -lオプションで指定可能な主なリソースは下記の通りです. ||リソース名 ||説明 ||値 || ||select ||ノード数 ||1以上の整数 || ||ncpus ||CPUコア数/ノード ||1以上の整数 || ||mpiprocs ||MPIプロセス数/ノード ||1以上の整数 || ||mem ||メモリ使用量/ノード ||整数<mb|gb> || ||ngpus ||GPU使用数/ノード ||0以上の整数 || ||walltime ||最大実行時間 ||HH:MM:SS || === 実行スクリプトにおけるオプションの指定 === qsubコマンドのオプションは実行スクリプトの2行目以降で指定することもできます. ・スレッド並列計算などで複数のCPUコアを占有する場合 {{{ #PBS -l select=使用ノード数:ncpus=占有CPUコア数(並列数) }}} ・MPIによるプロセス並列計算を行う場合 {{{ #PBS -l select=使用ノード数:ncpus=1ノードあたりの占有CPUコア数:mpiprocs=1ノードあたりのMPIプロセス数 }}} ・占有するメモリ容量を指定する場合 {{{ #PBS -l select=使用ノード数:mem=1ノードあたりのメモリ容量:ncpus=1ノードあたりの並列数 }}} ・利用する演算ノードを指定する場合 {{{ #PBS -l select=1:vnode=ホストA:ncpus=ホストAでの並列数:vnode=ホストB:ncpus=ホストBでの並列数,・・・ }}} * 演算ノードのホスト名はysnd00~ysnd14です(システム構成-ハードウェア構成 参照). * ysnd00~ysnd14はMI210 PCIeを各2枚搭載しています. GPUを指定して実行したい場合は,次のように記述します.ngpusにはノードあたりのGPU数(0~2)を指定します.GPUはsRchq, mRchq, Eduq, iEduqで使用可能です. {{{ #PBS -l select=1:ngpus=<GPU数> }}} ジョブ実行時間を指定して実行したい場合は,次のように記述します. {{{ #PBS -l walltime=hh:mm:ss }}} === 実行スクリプトの例:逐次実行 === {{{ #!/bin/bash #PBS -q Eduq #PBS -l select=1:ncpus=1 #PBS -l walltime=1:00:00 ulimit -c 0 # avoid generating core files . /etc/profile # enable module command module load intel/2025 # enable use of numerical library cd $PBS_O_WORKDIR ./test.x }}} === 実行スクリプトの例:OpenMP並列 === {{{ #!/bin/bash #PBS -q Eduq #PBS -l select=1:ncpus=4 ulimit -c 0 # avoid generating core files . /etc/profile # enable module command module load intel/2025 module load intelmpi/2025 export OMP_NUM_THREADS=4 cd $PBS_O_WORKDIR ./test.x }}} === 実行スクリプトの例:ノード占有MPI === {{{ #!/bin/bash #PBS -q sRchq #PBS -l select=1:ncpus=48:mpiprocs=48:mem=256g ulimit -c 0 # avoid generating core files . /etc/profile # enable module command module load intel/2025 module load intelmpi/2025 export OMP_NUM_THREADS=1 cd $PBS_O_WORKDIR mpirun -np 48 ./test.x }}} === 実行スクリプトの例:ノード間並列 === ノード間で通信を行うために,~/.sshにてパスワードなしの公開鍵,秘密鍵を作成(例:ssh-keygen -t rsa -b 4096)し,公開鍵の内容をauthorized_keysに追加してください.以下は2ノードを占有して96 CPUコア,96 MPIプロセスでプログラムを実行するスクリプトです. {{{ #!/bin/bash #PBS -q mRchq #PBS -l select=2:ncpus=48:mpiprocs=48:mem=256g ulimit -c 0 # avoid generating core files . /etc/profile # enable module command module load intel/2025 module load intelmpi/2025 export OMP_NUM_THREADS=1 cd $PBS_O_WORKDIR mpirun -np 96 ./test.x }}} === 実行スクリプトの例:AMD GPUの利用 === {{{ #!/bin/bash #PBS -q Eduq #PBS -l select=1:ncpus=1:ngpus=1 #PBS -v SINGULARYTY_IMAGE=/common/prg_env_amd_2025.01.sif ulimit -c 0 # avoid generating core files . /etc/profile # enable module command cd $PBS_O_WORKDIR ./test.x }}} == 標準/最大リソースの確認 == 各キューの標準/最大リソースは下記コマンドで確認できます. {{{ qstat -Qf <キュー名> }}} |
行 253: | 行 164: |
=== ジョブ投入方法 === qsubの-Iオプションを使用することで,対話的にジョブを実行することができます.このときのキューは Eduq もしくは iEduq のいずれかを指定してください. 下記の例では1CPUコア,メモリ8GiB,1GPUのリソースを割り当てて,bashを起動しジョブの中で対話型操作(ホスト名確認,GPU確認)を行う場合の例です.GPUはジョブに割当てられたGPUのみ表示されます. {{{ [******@ydev09 ~]$ qsub -I -q iEduq -l select=1:ncpus=1:mem=8g:ngpus=1 -v SINGULARITY_IMAGE=/common/Singularity_sif/prg_env_amd_2025.01.sif /bin/bash qsub: waiting for job 1193.ypbs0.edu.tut.ac.jp to start qsub: job 1193.ypbs0.edu.tut.ac.jp ready Singularity> hostname yind00.edu.tut.ac.jp Singularity> Singularity> nvidia-smi Wed May 28 15:49:15 2025 +-----------------------------------------------------------------------------------------+ | NVIDIA-SMI 570.124.06 Driver Version: 570.124.06 CUDA Version: 12.8 | |-----------------------------------------+------------------------+----------------------+ | GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |=========================================+========================+======================| | 0 NVIDIA A100 80GB PCIe Off | 00000000:CA:00.0 Off | 0 | | N/A 40C P0 65W / 300W | 1MiB / 81920MiB | 0% Default | | | | Disabled | +-----------------------------------------+------------------------+----------------------+ +-----------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=========================================================================================| | No running processes found | +-----------------------------------------------------------------------------------------+ Singularity> exit exit qsub: job 1193.ypbs0.edu.tut.ac.jp completed }}} |
|
行 255: | 行 204: |
== 利用リソースの指定 == |
Singularityイメージを指定してジョブを実行することが可能です. イメージを指定する場合SINGULARITY_IMAGE=<イメージ名>を指定してジョブを起動します./common/Singularity_sif/ に用意されているイメージの他に,ユーザが用意したイメージを指定することもできます.Singularityではイメージ内のサービス(EntryPoint)は使用できません. イメージを指定しない場合は,自動で選択されたSingularityイメージでジョブを起動します. === 実行例 === 下記の例ではコンテナ上でbashを起動し,unameコマンドでホスト名を確認し,pythonでdatetimeをインポートしています. {{{ [*****@ydev09 ~]$ qsub -I -q Eduq -l select=1:ncpus=2:mem=16g -v SINGULARYTY_IMAGE=/common/Singularity_sif/prg_env_intel_2025.01.sif /bin/bash qsub: waiting for job 1191.ypbs0.edu.tut.ac.jp to start qsub: job 1191.ypbs0.edu.tut.ac.jp ready Singularity> uname -n ysnd00.edu.tut.ac.jp Singularity> python3 -c "import datetime" Singularity> exit exit qsub: job 1191.ypbs0.edu.tut.ac.jp completed }}} |
行 259: | 行 227: |
=== ジョブの状態を確認する === ジョブ,キューの状態確認にはqstatコマンドを利用します. (1) ジョブキューの状態表示 {{{ qstat -q }}} (2) ジョブの状態表示 {{{ qstat }}} (3) ジョブのリソース割当て状況やQueue状態での待ち要因を表示 {{{ qstat -asw }}} (4) 空きリソースの確認 {{{ pbsnodes -ajS }}} === 投入したジョブをキャンセルする === ジョブのキャンセルにはqdelコマンドを使用します. {{{ qdel jobID }}} job IDはqstatコマンドより確認してください. Running状態ジョブがキャンセルできない場合は下記コマンドで強制的にジョブを終了することができます. {{{ qdel -Wforce jobID }}} |
ジョブの実行
目次
ジョブ環境
バッチジョブとインタラクティブジョブにより,計算サーバを利用することができます.本システムでは,ジョブスケジューラとしてPBS Professionalを採用しており,ジョブの送信,状況確認等はPBS Professionalのコマンドによって行います.対話的に処理を実行する場合やGUIアプリケーションを起動する場合は,インタラクティブジョブを投入してください.それ以外の場合は,実行スクリプトを準備しバッチジョブを投入してください.
本システムでサポートするジョブ利用形態は,Singularityコンテナ上でのジョブ利用のみとなります.特に指定しない場合,デフォルトのコンテナイメージが使用されますが,利用者が用意したSingularityコンテナを指定することも可能です.詳しくは"コンテナイメージの指定"の箇所を読んでください.
バッチジョブ
ジョブ投入方法
PBS Professional用の実行スクリプトを作成し,qsubコマンドで次のようにジョブを投入します.
$ qsub -q キュー名 実行スクリプト名
例えば,研究用キューEduqにジョブを投入する場合は次のようにします.
$ qsub -q Eduq 実行スクリプト名
qsubコマンドのオプション
主なオプションを以下に示します.
オプション |
使用例 |
意味 |
-e |
-e filename |
標準エラー出力の内容を指定されたファイル名に出力する.-eオプションが指定されていない場合は,qsubコマンドが実行されたディレクトリ上に作成される.その際のファイル名は“ジョブ名.eジョブ番号”になる. |
-o |
-o filename |
標準出力の内容を指定されたファイル名に出力する.-oオプションが指定されていない場合は,qsubコマンドが実行されたディレクトリ上に作成される.その際のファイル名は“ジョブ名.oジョブ番号”になる. |
-j |
-j join |
標準出力,標準エラー出力を1個のファイルにマージするかしないかの動作を指定する. |
-q |
-q destination |
ジョブを投入するキューを指定する. |
-l |
-l resource_list |
ジョブの実行に必要なリソース資源を指定する. |
-N |
-N name |
ジョブ名を指定する(文字数は15文字まで).デフォルトはスクリプトでジョブが投入された場合は,スクリプトのファイル名となる.そうでない場合は,“STDIN”になる. |
-m |
-m mail_events |
ジョブの状態をメールで通知する指定を行う. |
-M |
-M user_list |
メールを送信するメールアドレスを指定する. |
-v |
-v SINGULARITY_IMAGE=<image> |
指定したSingularityイメージでジョブを実行. |
-I |
-I |
インタラクティブ(対話型)ジョブを実行します. |
-lオプションで指定可能な主なリソースは下記の通りです.
リソース名 |
説明 |
値 |
select |
ノード数 |
1以上の整数 |
ncpus |
CPUコア数/ノード |
1以上の整数 |
mpiprocs |
MPIプロセス数/ノード |
1以上の整数 |
mem |
メモリ使用量/ノード |
整数<mb|gb> |
ngpus |
GPU使用数/ノード |
0以上の整数 |
walltime |
最大実行時間 |
HH:MM:SS |
実行スクリプトにおけるオプションの指定
qsubコマンドのオプションは実行スクリプトの2行目以降で指定することもできます.
・スレッド並列計算などで複数のCPUコアを占有する場合
#PBS -l select=使用ノード数:ncpus=占有CPUコア数(並列数)
・MPIによるプロセス並列計算を行う場合
#PBS -l select=使用ノード数:ncpus=1ノードあたりの占有CPUコア数:mpiprocs=1ノードあたりのMPIプロセス数
・占有するメモリ容量を指定する場合
#PBS -l select=使用ノード数:mem=1ノードあたりのメモリ容量:ncpus=1ノードあたりの並列数
・利用する演算ノードを指定する場合
#PBS -l select=1:vnode=ホストA:ncpus=ホストAでの並列数:vnode=ホストB:ncpus=ホストBでの並列数,・・・
* 演算ノードのホスト名はysnd00~ysnd14です(システム構成-ハードウェア構成 参照).
* ysnd00~ysnd14はMI210 PCIeを各2枚搭載しています.
GPUを指定して実行したい場合は,次のように記述します.ngpusにはノードあたりのGPU数(0~2)を指定します.GPUはsRchq, mRchq, Eduq, iEduqで使用可能です.
#PBS -l select=1:ngpus=<GPU数>
ジョブ実行時間を指定して実行したい場合は,次のように記述します.
#PBS -l walltime=hh:mm:ss
実行スクリプトの例:逐次実行
#!/bin/bash #PBS -q Eduq #PBS -l select=1:ncpus=1 #PBS -l walltime=1:00:00 ulimit -c 0 # avoid generating core files . /etc/profile # enable module command module load intel/2025 # enable use of numerical library cd $PBS_O_WORKDIR ./test.x
実行スクリプトの例:OpenMP並列
#!/bin/bash #PBS -q Eduq #PBS -l select=1:ncpus=4 ulimit -c 0 # avoid generating core files . /etc/profile # enable module command module load intel/2025 module load intelmpi/2025 export OMP_NUM_THREADS=4 cd $PBS_O_WORKDIR ./test.x
実行スクリプトの例:ノード占有MPI
#!/bin/bash #PBS -q sRchq #PBS -l select=1:ncpus=48:mpiprocs=48:mem=256g ulimit -c 0 # avoid generating core files . /etc/profile # enable module command module load intel/2025 module load intelmpi/2025 export OMP_NUM_THREADS=1 cd $PBS_O_WORKDIR mpirun -np 48 ./test.x
実行スクリプトの例:ノード間並列
ノード間で通信を行うために,~/.sshにてパスワードなしの公開鍵,秘密鍵を作成(例:ssh-keygen -t rsa -b 4096)し,公開鍵の内容をauthorized_keysに追加してください.以下は2ノードを占有して96 CPUコア,96 MPIプロセスでプログラムを実行するスクリプトです.
#!/bin/bash #PBS -q mRchq #PBS -l select=2:ncpus=48:mpiprocs=48:mem=256g ulimit -c 0 # avoid generating core files . /etc/profile # enable module command module load intel/2025 module load intelmpi/2025 export OMP_NUM_THREADS=1 cd $PBS_O_WORKDIR mpirun -np 96 ./test.x
実行スクリプトの例:AMD GPUの利用
#!/bin/bash #PBS -q Eduq #PBS -l select=1:ncpus=1:ngpus=1 #PBS -v SINGULARYTY_IMAGE=/common/prg_env_amd_2025.01.sif ulimit -c 0 # avoid generating core files . /etc/profile # enable module command cd $PBS_O_WORKDIR ./test.x
標準/最大リソースの確認
各キューの標準/最大リソースは下記コマンドで確認できます.
qstat -Qf <キュー名>
インタラクティブジョブ
ジョブ投入方法
qsubの-Iオプションを使用することで,対話的にジョブを実行することができます.このときのキューは Eduq もしくは iEduq のいずれかを指定してください. 下記の例では1CPUコア,メモリ8GiB,1GPUのリソースを割り当てて,bashを起動しジョブの中で対話型操作(ホスト名確認,GPU確認)を行う場合の例です.GPUはジョブに割当てられたGPUのみ表示されます.
[******@ydev09 ~]$ qsub -I -q iEduq -l select=1:ncpus=1:mem=8g:ngpus=1 -v SINGULARITY_IMAGE=/common/Singularity_sif/prg_env_amd_2025.01.sif /bin/bash qsub: waiting for job 1193.ypbs0.edu.tut.ac.jp to start qsub: job 1193.ypbs0.edu.tut.ac.jp ready Singularity> hostname yind00.edu.tut.ac.jp Singularity> Singularity> nvidia-smi Wed May 28 15:49:15 2025 +-----------------------------------------------------------------------------------------+ | NVIDIA-SMI 570.124.06 Driver Version: 570.124.06 CUDA Version: 12.8 | |-----------------------------------------+------------------------+----------------------+ | GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |=========================================+========================+======================| | 0 NVIDIA A100 80GB PCIe Off | 00000000:CA:00.0 Off | 0 | | N/A 40C P0 65W / 300W | 1MiB / 81920MiB | 0% Default | | | | Disabled | +-----------------------------------------+------------------------+----------------------+ +-----------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=========================================================================================| | No running processes found | +-----------------------------------------------------------------------------------------+ Singularity> exit exit qsub: job 1193.ypbs0.edu.tut.ac.jp completed
コンテナイメージの指定
Singularityイメージを指定してジョブを実行することが可能です.
イメージを指定する場合SINGULARITY_IMAGE=<イメージ名>を指定してジョブを起動します./common/Singularity_sif/ に用意されているイメージの他に,ユーザが用意したイメージを指定することもできます.Singularityではイメージ内のサービス(EntryPoint)は使用できません.
イメージを指定しない場合は,自動で選択されたSingularityイメージでジョブを起動します.
実行例
下記の例ではコンテナ上でbashを起動し,unameコマンドでホスト名を確認し,pythonでdatetimeをインポートしています.
[*****@ydev09 ~]$ qsub -I -q Eduq -l select=1:ncpus=2:mem=16g -v SINGULARYTY_IMAGE=/common/Singularity_sif/prg_env_intel_2025.01.sif /bin/bash qsub: waiting for job 1191.ypbs0.edu.tut.ac.jp to start qsub: job 1191.ypbs0.edu.tut.ac.jp ready Singularity> uname -n ysnd00.edu.tut.ac.jp Singularity> python3 -c "import datetime" Singularity> exit exit qsub: job 1191.ypbs0.edu.tut.ac.jp completed
ジョブの管理
ジョブの状態を確認する
ジョブ,キューの状態確認にはqstatコマンドを利用します.
(1) ジョブキューの状態表示
qstat -q
(2) ジョブの状態表示
qstat
(3) ジョブのリソース割当て状況やQueue状態での待ち要因を表示
qstat -asw
(4) 空きリソースの確認
pbsnodes -ajS
投入したジョブをキャンセルする
ジョブのキャンセルにはqdelコマンドを使用します.
qdel jobID
job IDはqstatコマンドより確認してください.
Running状態ジョブがキャンセルできない場合は下記コマンドで強制的にジョブを終了することができます.
qdel -Wforce jobID