qsub
とは
qsub
は、ジョブスケジューリングシステムにジョブ(スクリプトやコマンド)を送信するためのコマンド。主にHPC(高性能計算)環境やクラスターコンピューティングシステムで使用される。qsubは以下のようなジョブスケジューリングシステムで使用されることが一般的:
- PBS(Portable Batch System)
- Torque
- Slurm
ジョブをスケジューリングシステムに送信することで、クラスター内の利用可能なリソース(CPU、メモリなど)に基づいて自動的に実行される。これにより、リソースの効率的な利用と負荷分散が実現される。
qsub
コマンドの使用例
インタプリタの指定
$ qsub -S /usr/bin/python
-
説明: スクリプトファイルを実行する際のインタプリタを指定する。この例ではPythonを指定している。
-
使用例:
qsub -S /usr/bin/python job_script.py
現在の作業ディレクトリで実行する
$ qsub -cwd
-
説明: ジョブを現在の作業ディレクトリで実行する。デフォルトでは、ジョブはホームディレクトリで実行される。
-
使用例:
qsub -cwd job_script.py
標準出力および標準エラー出力の指定
$ qsub -o <path A> -e <path B>
-
説明: 標準出力をpath Aに、標準エラー出力をpath Bにリダイレクトする。標準出力、標準エラー出力をファイルに出力させない場合は、path Aとpath Bを/dev/nullとする。
-
使用例:
qsub -o /path/to/output.log -e /path/to/error.log job_script.py
ジョブの名前を指定する
$ qsub -N <alternative job name>
-
説明: ジョブの名前をと命名する。
-
使用例:
qsub -N my_job job_script.py
オプションの略語と説明
-s (Shell)
-
略語: shell
-
説明: ジョブを実行するためのシェルを指定する。例えば、BashシェルやCシェルなど。
-
使用例:
qsub -s /bin/bash job_script.sh
-cwd (Current Working Directory)
-
略語: current working directory
-
説明: ジョブを現在の作業ディレクトリで実行する。デフォルトではホームディレクトリで実行される。
-
使用例:
qsub -cwd job_script.sh
-o pathA -e pathB (Output and Error)
-
略語: output と error
-
説明: -o オプションは標準出力を指定したファイルにリダイレクトし、-e オプションは標準エラーを指定したファイルにリダイレクトする。
-
使用例:
qsub -o /path/to/output.log -e /path/to/error.log job_script.sh
-N (Name)
-
略語: name
-
説明: ジョブに名前を付ける。ジョブ名を指定することで、ジョブの管理や識別が容易になる。
-
使用例:
qsub -N my_job job_script.sh
ジョブの削除
ジョブIDを指定してジョブを削除する
$ qsub job_script.py
Your job 1152367 (“job_script.py”) has been submitted
$ qdel 1152367
username has registered the job 1152367 for deletion
ユーザ名を指定してジョブを削除する
$ qsub job_script.py
Your job 1234567 (“job_script.py”) has been submitted
$ qdel -u username
username has registered the job 1234567 for deletion
username has registered the job 1234567 for deletion