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