HOME > システム > SR11000 > システムに関する情報 > ジョブスケジューリングシステムについて
ジョブスケジューリングシステムについて
本センターでは利用者の皆様に有効かつ公平な計算機資源の提供を行うため、スーパーコンピューターSR11000のバッチジョブの実行においてジョブスケジューリングシステムを導入しています。詳細は以下のとおりです。
本ジョブスケジューリングシステムでは、4月から現在までに実行済みのバッチジョブにて使用したCPUの使用量(以下、CPU使用量とする)と、投入したジョブに設定した実行予定時間より算出されるCPUの予定使用量(以下、CPU予定使用量とする)から、各ジョブの実行優先度を決定します。
- 各キュー毎に、実行待ちのジョブにそれぞれ優先順位(63が最優先で0まで)を付け、順位の高いジョブから順に実行します。
- 順位付けの要素は、4月から現在までに実行したバッチジョブのCPU使用量を利用者毎に積算した値と、投入したバッチジョブで要求しているCPU予定使用量を合計したものであり、その値が少ないジョブから順位付けを行います。
- CPU(予定)使用量の算出は以下のとおり行います。
バッチジョブを実行するキュー | CPU(予定)使用量の算出方法 |
---|---|
スカラーキュー(A~D) | ジョブのCPU時間* |
パラレルキュー(P001、P004、S1、H1、debug等) | ジョブの実行時間* × CPU数(8または16)×ノード数 |
注1:CPU予定使用量を算出する場合は * を"実行予定時間"に置き換えてください。
実行予定時間はジョブスクリプトに記述した値(#@$-lT)を使用します。
なお、省略した場合はパラレルキューではバッチキューの制限時間、スカラーキューでは10分が実行
予定時間となります。
注2:パラレルキューに計算リソース追加オプション用キュー Q001、Q004、Q008は含まれません。
例:P004キューで1時間(3,600秒)ジョブを実行した場合のCPU使用量の算出
3,600(秒)× 16(CPU)× 4(ノード)= 230,400
- いずれかのジョブが終了する毎に当該利用者のCPU使用量を積算し、順位の付け替えを行います。大規模計算を行う利用者が不利とならないよう、一定時間毎にCPU使用量に一定の逓減率を掛け、逓減する仕組みとしています。
- キューに並んでいる際の待ち時間は、順位付けの要素に含みません。
- グループコースの専用キューについては、上記の優先順位変更処理は適用されません。但し、実行したジョブのCPU使用量は積算されます。
- ジョブの実行は2つまで同時に可能です。ただし同一のキューでは1つとなります。
- ジョブの優先順位はqstatコマンドの "PRI" の値で確認が可能です。
% qstat
REQUEST NAME OWNER QUEUE PRI NICE CPU MEM STATE
99999.n81 job.csh p07xxx P001 63 20 UNLIM 2048MB QUEUED