「バッチジョブ投入システム SunGridEngine を用いた計算機の利用」の版間の差分
ナビゲーションに移動
検索に移動
158行目: | 158行目: | ||
<tr> | <tr> | ||
<td><div align="center">'''#$ -t''' ''開始番号-終了番号:インクリメント数''</div></td> | <td><div align="center">'''#$ -t''' ''開始番号-終了番号:インクリメント数''</div></td> | ||
<td><div align="center">アレイジョブを実行 [[ | <td><div align="center">アレイジョブを実行 [[並列計算の実行]]</div></td> | ||
</tr> | </tr> | ||
</table><br> | </table><br> |
2012年8月2日 (木) 01:23時点における版
バッチジョブ投入システム
- 複数のユーザが平等に計算機資源(メモリ, CPU)を使うためのしくみです。
- データ解析をする場合は、基本的にこのバッチジョブ投入システムを利用してください
- 実行したい処理をシェルスクリプトに書き、qsub コマンドの引数にして実行させます。
- ここでは「Sun Grid Engine (SGE) ORACLEによるSGEユーザーズガイド」というジョブ投入のシステムを採用しています。
利用可能なキュー
分散並列処理型 |
共有メモリ型 |
||||
キュー名 |
small |
medium |
large |
bias |
cat |
ジョブの特徴 |
短時間・並列多 |
中規模 |
長時間 |
大メモリ |
denovoアセンブル用 |
利用ノード |
node01~node32 |
node01~node32 |
node01~node32 |
bias |
catl, catm |
最大実行時間/ジョブ |
2hr |
48hr |
no limit |
no limit |
no limit |
最大ジョブ数/キュー |
192 |
128 |
64 |
32 |
112 |
- キューを指定しない場合、デフォルトでは「small」で実行されます。
- denovoアセンブリ用catキューの使い方
実行例
BLAST実行ジョブ例 (blast.job) (下記の「ジョブスクリプトオプション」も参考にしてください)
#!/bin/sh #$ -q small #$ -v BLASTDB="/bio/db/blast/db" #$ -v BLASTMAT="/bio/db/blast/matrix" /bio/bin/blastall -p blastx -e 0.001 -d nr-aa -i /home/xxx/sample.fa -o /home/xxx/sample.out
実行(qsubコマンドにジョブファイルを渡す)
% qsub blast.job
自分のジョブの様子を見る
% qstat
SGE コマンド早見表
投入後のジョブにコマンドを発行できるのは、ジョブを投入したユーザのみです。詳しいオプションはmanコマンドなどで確認してください。
コマンド |
説明 |
qsub |
ジョブを投入する |
qstat |
ジョブとキューの状態を表示する |
qdel job-ID |
指定したIDのジョブを削除する |
qhold job-ID |
指定したIDのジョブ(待機中のみ)をホールドする |
qrls job-ID |
ホールド状態のジョブをリリースする |
qhost |
各ノードの状態を表示する |
qmod -s job-ID |
実行中のジョブをサスペンドする |
qmod -us job-ID |
サスペンド中のジョブを再実行する |
ジョブスクリプトオプション早見表
オプション |
説明 |
#$ -o filename |
標準出力の結果を指定したファイルに保存(指定しないとホームディレクトリにファイルが作られる) |
#$ -e filename |
標準エラー出力の結果を指定したファイルに保存(指定しないとホームディレクトリにファイルが作られる) |
#$ -q queue_name |
キューを指定してジョブを実行 |
#$ -cwd |
qsubした時のディレクトリに移動してジョブを実行 |
#$ -v 環境変数 |
環境変数をジョブに渡す |
#$ -N job_name |
ジョブ名を指定する |
#$ -s shell_name |
ジョブスクリプトを指定したシェルで実行 |
#$ -a MMDDhhmm |
ジョブの開始日時を指定 |
#$ -l resource_name 値 |
ジョブが使うリソース量を指定する |
#$ -pe PE_name プロセス数 |
並列ジョブを実行する場合の環境と並列数の指定 |
#$ -t 開始番号-終了番号:インクリメント数 |
アレイジョブを実行 並列計算の実行 |