3. 利用規則¶
3.1. 概要¶
スーパーコンピュータ「富岳」の利用に係る基本事項を示します。
3.2. 利用規模/利用環境¶
項目 |
内容 |
---|---|
計算ノード数 |
158,976 |
言語ソフトウェア |
Technical Computing Suite V4.0L20A Development Studio |
プログラム開発 |
ログインノード |
ジョブ投入 |
ログインノード |
ホーム領域 |
第2階層ストレージ(FEFS) |
データ領域 |
第2階層ストレージ(FEFS) |
3.2.1. 利用可能なジョブ規模¶
1~82,944 ノード
利用可能なジョブ規模はリソースグループにより異なります。
リソースグループは富岳ウェブサイトの「Resource group configuration」を参照してください。
3.3. ローカルアカウント管理¶
3.3.1. ログイン¶
ローカルアカウントを利用したシステムへのログインはSSH公開鍵認証となります。
3.3.2. クライアント証明書による認証¶
3.3.3. プロジェクト責任者の責任範囲¶
3.3.4. 更新処理¶
3.4. リソース¶
利用可能な計算ノード数、および、ディスクについて示します。
3.4.1. 計算ノード¶
指定できる計算ノード数は、リソースグループごとに下限値、最大値が異なります。
指定できるジョブ形状(1次元、2次元、3次元)は、リソースグループごとに最大値が異なります。
2次元、3次元については、各軸の入れ替えが可能です。
例えば各軸の最大値が4x6x16
であった場合、軸を入れ換えた16x4x6
の形状も利用できます。
指定できるノード割り当て方法(noncont、mesh、torus)は、リソースグループごとに異なります。
385ノード以上が利用できるリソースグループはtorusのみ利用可能です。デフォルトはtorusです。
384ノード以下が利用できるリソースグループはnoncont(デフォルト)、mesh、torusが指定可能なリソースグループと、torusのみ利用可能なリソースグループを用意しています。meshまたはtorusを指定した場合、noncont(デフォルト)と比べてジョブ実行までの待ち時間が長くなります。
離散割り当て(noncont)を含むリソースグループは、meshまたはtorusを指定した場合でも離散割り当てジョブの影響を受ける場合があります。ベンチマーク測定等厳密な性能測定を行いたい場合はtorusのみが利用できるリソースグループを利用してください。
リソースグループは富岳ウェブサイトの「Resource group configuration」を参照してください。
注意
ジョブ形状は、軸ごとに最大値を持っています。ジョブ投入時には、この軸の最大値を超えないように指定する必要があります。
3.4.2. ジョブ投入数の確認¶
pjstatコマンドの--limit
オプションでは、pjaclコマンドで表示される内容のうち、ユーザのジョブ投入における資源の制限値と現在の割り当て量を確認できます。
[リソースユニット内での資源の制限値と割り当て量]
[_LNlogin]$ pjstat --limit System Resource Information: RSCUNIT: rscunit_ft01 USER: user1 LIMIT-NAME LIMIT ALLOC ru-accept 100 0 # 1 ru-accept-allsubjob unlimited 0 # 2 ru-accept-bulksubjob unlimited 0 # 3 ru-accept-stepsubjob unlimited 0 # 4 ru-run-job unlimited 0 # 5 ru-run-bulksubjob unlimited 0 # 6 ru-use-node unlimited 0 # 7 ru-interact-accept unlimited 0 # 8 ru-interact-run-job unlimited 0 # 9 ru-interact-use-node unlimited 0 # 10 ru-use-core unlimited 0 # 11 ru-interact-use-core unlimited 0 # 12 GROUP: group1 LIMIT-NAME LIMIT ALLOC ru-accept unlimited 0 ru-accept-allsubjob unlimited 0 ru-accept-bulksubjob unlimited 0 ru-accept-stepsubjob unlimited 0 ru-run-job unlimited 0 ru-run-bulksubjob unlimited 0 ru-use-node unlimited 0 ru-interact-accept unlimited 0 ru-interact-run-job unlimited 0 ru-interact-use-node unlimited 0 ru-use-core unlimited 0 ru-interact-use-core unlimited 0 ALL: LIMIT-NAME LIMIT ALLOC ru-accept unlimited 0 ru-accept-allsubjob unlimited 0 ru-accept-bulksubjob unlimited 0 ru-accept-stepsubjob unlimited 0 ru-run-job unlimited 0 ru-run-bulksubjob unlimited 0 ru-use-node unlimited 0 ru-interact-accept unlimited 1 ru-interact-run-job unlimited 0 ru-interact-use-node unlimited 0 ru-use-core unlimited 0 ru-interact-use-core unlimited 0注釈
バッチジョブの同時受付け数
バルクジョブおよびステップジョブのサブジョブの同時受付制限数
バルクジョブのサブジョブの同時受付制限数
ステップジョブのサブジョブの同時受付制限数
バッチジョブの同時実行数
バルクジョブのサブジョブの同時実行制限数
バッチジョブのノードの同時使用数
会話型ジョブの同時受付け数
会話型ジョブの同時実行数
会話型ジョブのノードの同時使用数
バッチジョブのCPUコアの同時使用数
会話型ジョブのCPUコアの同時使用数
pjstatコマンドの--limit
オプションで表示される項目と内容は以下のとおりです。
項目
説明
LIMIT-NAME
制限値の名称
RSCUNIT
リソースユニット名
GROUP
OSにおけるグループ名
LIMIT
制限値
ALLOC
現在の割り当て値
[リソースグループの下限設定について]
リソースグループには、指定できるノード数に下限を設定しています。下限値より少ないノード数を指定していた場合、pjsub実行時に次のようなエラーメッセージが表示され、ジョブが受け付けられません。
ノード数の指定が下限値より小さかった場合のエラー表示は以下のとおりです。
[_LNlogin]$ pjsub -L "rscgrp=large" sample.sh [ERR.] PJM 0054 pjsub node=1 is less than the lower limit (385).
3.4.3. リソースグループの使用方法¶
リソースグループを使用する場合は、リソース名を指定する必要があります。
リソースグループ small による実行コマンド例
[_LNlogin]$ pjsub -L "rscgrp=small" sample.sh
3.4.4. リソースグループの利用状況¶
システムにおける資源の利用状況は、pjshowrscコマンドで確認します。
注意
シングルアカウントを利用している場合は、newgrpコマンドで個別の課題グループ(例:hpxxxxxx)に変更したうえでpjshowrscコマンドを実行してください。
リソースグループのごとのサマリ表示
--rscgrp
オプションを引数なしで指定すると、すべてのリソースグループについて表示します。[_LNlogin]$ pjshowrsc --rscgrp [ CLST: clst ] [ RSCUNIT: rscunit_ft01 ] RSCGRP NODE TOTAL FREE ALLOC group1 36 24 12 group2 36 24 12 group3 36 24 12
特定のリソースグループについてのサマリ表示
--rscgrp
オプションの引数にリソースグループ名を指定すると、指定したリソースグループ情報を表示します。[_LNlogin]$ pjshowrsc --rscgrp group2 [ CLST: clst ] [ RSCUNIT: rscunit_ft01 ] RSCGRP NODE TOTAL FREE ALLOC group2 36 24 12
3.4.5. ディスク¶
ファイルシステムの種類について示します。
ディスク領域として、ホーム領域、データ領域、シェア領域、tmpfs領域および2ndfs領域の5種類を用意します。
領域
ファイルシステム
割り当てvolume
ホーム領域
グローバル・ファイルシステム(FEFS,LLIO)
/vol0002,/vol0003,/vol0004,/vol0005,/vol0006
データ領域
グローバル・ファイルシステム(FEFS,LLIO)
〃
シェア領域
グローバル・ファイルシステム(FEFS,LLIO)
〃
tmpfs領域
tmpfs
-
2ndfs領域
グローバル・ファイルシステム(FEFS)
/vol0001
注意
富岳ではシステムで利用者データのバックアップを採取しません。データの管理(バックアップ等)は利用者の自己管理となります。
ファイルシステムに対して短時間に連続して数十万ファイル以上をopen,closeする操作を行った場合、実行ノードでメモリ枯渇を引き起こす場合があります。
以下、1から3に示す操作は、ファイルシステム全体に高負荷を与える場合があるため、お控えください。
同一ディレクトリに対する1000プロセス以上からの一斉ファイル作成
ホーム領域、および、データ領域にある同一ディレクトリに、十万以上のファイル作成
複数の計算ノードから以下を同時に行う処理
ファイルやディレクトリの作成や削除
ファイルやディレクトリの参照
特に 3. の操作は、ファイルシステムのスローダウンや計算ノードのダウンにつながる可能性があるため、お控えください。
(例)1000 本(プロセス)以上の小規模ジョブを同一ディレクトリ上で実行し、ジョブ内で同ディレクトリに対する操作、ジョブの結果や統計情報を出力する。
複数の計算ノードが同時に同じディレクトリにアクセスしないよう、以下の対応をしていただくことでジョブが実行しやすくなります。
ジョブ毎に出力ディレクトリを分ける
ディレクトリを階層化し、参照のみを行うディレクトリと出力を行うディレクトリを分ける
ディレクトリ名について
ホームディレクトリ、データディレクトリ、シェアディレクトリ、tmpfsディレクトリ、2ndfsディレクトリは、次に示すシンボリックリンク名で作成しています。ジョブのログ、富岳ウェブサイト等では、実体のパス(割り当てvolumeに記載したパス)で表示するものがあります。
ホームディレクトリ:
/home/username/
データディレクトリ:
/vol0n0m/data/groupname/
シェアディレクトリ:
/vol0n0m/share/groupname/
tmpfs ディレクトリ:
/worktmp/
2ndfs ディレクトリ:
/2ndfs/groupname/
n:volume番号(2~6)m:MDT番号(0~7)
データディレクトリ、シェアディレクトリ、2ndfsディレクトリは、グループに対して割り当てます。グループのメンバーでご利用ください。シェアディレクトリは、ログインノードからのみ上記パスで参照できます。2ndfsについてはファイルシステムを参照ください。
シェア領域(/vol0n0m/share/groupname/)の利用
特定のグループやメンバー間でデータを共有できる領域です。ホーム領域やデータ領域と異なり、全ての利用者が
/vol0n0m/share/groupname/
配下にアクセスできます。共有したいグループやメンバー毎にディレクトリを自由に作成することができます。tmpfs領域(/worktmp/)の利用
ジョブ実行中に計算ノードのみから利用できる一時ファイル用領域です。tmpfs領域は計算ノードのメモリ(ジョブメモリ)を消費し、提供される容量は最大20GiBです。注意
20GiB以上のファイルを一時ファイルとして使用する場合には、ノード内テンポラリ領域 のご活用等の検討をお願いします。
3.4.5.2. tmpfs領域(/worktmp/)の利用方法¶
通常のファイルシステムと同様にファイルの作成、読み書き、実行可能ファイルの起動が可能です。
利用時は以下の点に留意してください。
- ジョブごとに領域が割り当てられます。ジョブ実行開始~ジョブ実行終了の間だけ利用可能です。同一ユーザの別ジョブや別ユーザのジョブからは参照できません。
- ノード単位で割り当てられます。同一ノード内でのみ利用可能です。他ノードからは参照できません。例えば1ノード4プロセスで実行した場合、同一ノード内の4プロセスは同じ領域を参照します。
- 提供する容量は20GiBです。ただし、利用できるtmpfs領域の容量は、以下の条件によって異なります。
利用容量上限(目安)= ジョブメモリ量の上限 - ジョブによるメモリ使用量 (1)
式(1)の結果が20GiB以上の場合 : 20GiB
式(1)の結果が20GiB未満の場合 : 式(1)の結果
ジョブメモリ量の上限やジョブによるメモリ使用量(ユーザプログラムが使用するメモリ量)についてはユーザープログラムが利用可能なメモリ量の見積りを参照ください。
注意
tmpfs領域にファイルを利用容量上限以上配置しようとした場合、書き込みエラーが発生します。
また、「ジョブによるメモリ使用量」と「tmpfs領域の使用量」の合計が「ジョブメモリ量の上限」に迫る場合、OOM(Out Of Memory)が発生する可能性があります。
一度ジョブを実行し、ノード単位の最大メモリ使用量を把握した上での利用を推奨します。
3.4.6. ファイル作成とストライプ設定¶
ホーム領域、データ領域に作成するファイルに、ストライプを設定することができます。ストライプ設定を行うことにより、グローバル・ファイルシステムを構成するOST(Object Storage Target)に対するアクセスを分散し、効率の良い利用が可能となります。
注意
計算ノードから1ファイルのサイズが1GBを超える書き込みをする場合、特定のOSTへの負荷をかけないようにするため、ストライプ設定を行ってください。
3.4.6.1. ストライプの設定¶
ストライプの設定は、lfs setstripeコマンドを使用します。lfs setstripeコマンドの書式を示します。詳細はマニュアル「FEFSユーザーズガイド」を参照してください。
書式
lfs setstripe [options] <dirname|filename>オプション
[--stripe-count | -c stripe_count]ストライプ数を設定します。1~48を指定します。
- <dirname>
既存のディレクトリ名を指定します。ディレクトリにストライプが設定されます。設定後に、このディレクトリ配下に作成されるファイルやディレクトリにストライプの設定が継承されます。
- <filename>
新規のファイル名を指定します。ストライプを設定した空ファイルを作成します。既存のファイルは指定できません。既存のファイルのストライプ設定は変更できません。
- ストライプの設定方法
ここでは、ディレクトリを作成し、作成したディレクトリにストライプ設定する手順を示します。ファイル単位ではなく、ディレクトリにストライプ設定する利用方法を推奨します。
[_LNlogin]$ mkdir <dirname> [_LNlogin]$ lfs setstripe -c 4 <dirname>注意
計算ノードから、2ndfsに対して lfsコマンドを使用する場合は、コマンドをフルパス(/usr/bin/lfs)で指定してください。計算ノードから、第2階層ストレージのキャッシュに対して lfsコマンドを使用する場合は、そのまま lfs(defaut PATH)で指定してください。
3.4.6.2. ストライプの確認¶
ストライプの確認は、lfs getstripeコマンドを使用します。詳細はマニュアル「FEFSユーザーズガイド」を参照してください。
- ストライプの確認方法
ここでは、ディレクトリとファイルのストライプ設定を確認する手順を示します。次のようにして表示されるstripe_count、または、lmm_stripe_countを確認します。
[_LNlogin]$ lfs getstripe -d <dirname> <dirname> stripe_count: 4 stripe_size: 0 stripe_offset: -1 [_LNlogin]$ lfs getstripe <dirname>/<filename> <dirname>/<filename> lmm_stripe_count: 4 lmm_stripe_size: 1048576 lmm_stripe_offset: ... obdidx objid objid group ....注意
計算ノードから、2ndfsに対して lfsコマンドを使用する場合は、コマンドをフルパス(/usr/bin/lfs)で指定してください。計算ノードから、第2階層ストレージのキャッシュに対して lfsコマンドを使用する場合は、そのまま lfs(defaut PATH)で指定してください。
3.4.7. ファイルシステム¶
ジョブ運用ソフトウェアは、「階層化ストレージ」でのジョブ実行をサポートしています。階層化ストレージとは、以下に示す第1階層ストレージと第2階層ストレージによる階層構造を持つファイルシステムです。

第1階層ストレージ
第1階層ストレージは、Lightweight Layered IO-Accelerator(LLIO) 技術を利用した高速ファイルシステムです。第1階層ストレージは、LLIOと呼ぶ場合もあります。階層化ストレージでは、計算ノードから直接アクセスできるのはこの第1階層ストレージになります。
第1階層ストレージには以下の3種類の領域があります。
- ノード内テンポラリ領域
ジョブに割り当てられたそれぞれの計算ノードで利用できるローカルな領域です。
- 共有テンポラリ領域
ジョブに割り当てられたノード間で共有できる領域です。同じジョブのプロセスであれば、どの計算ノードからでもアクセスできます。
- 第2階層ストレージのキャッシュ
ジョブからは第2階層ストレージとして見えますが、内部的には、第2階層ストレージを直接アクセスするのではなく、第1階層ストレージ上にある第2階層ストレージのキャッシュをアクセスします。ノード内テンポラリ領域と共有テンポラリ領域はジョブごとに確保され、そのジョブだけが使用できる高速な作業用ファイルシステムです。これらの領域はジョブの開始時に確保され、ジョブが終了すると領域は削除されます。
参考
第1階層ストレージについての詳細は、マニュアル「LLIOユーザーズガイド」を参照してください。
第2階層ストレージ
第2階層ストレージは、分散ファイルシステムの FEFS を利用し、ログインノードおよび各計算ノードで共有されます。ユーザはジョブを投入する前に、ジョブの実行に必要なジョブスクリプトなどのファイルをこのファイルシステムに配置します。計算ノード上のジョブから第2階層ストレージへのアクセスは、内部的には第1階層ストレージ上のキャッシュに対するアクセスになります。
ホーム領域(/home)、データ領域(/vol0n0m/data)、シェア領域(/vol0n0m/share)、2ndfs領域(/2ndfs)は第2階層ストレージに作成されています。 2ndfsは第1階層ストレージを経由せず直接第2階層ストレージにアクセスするための領域です。
n:volume番号(2~6)m:MDT番号(0~7)ディスク容量/ファイル数制限
項目
ホーム領域
データ領域+シェア領域
2ndfs領域
容量制限
20GiB/ユーザ
5TiB/グループ
5TiB/グループ
ファイル数制限
200K/ユーザ
1.5M/グループ
1.5M/グループ
ブロックサイズ
4KiB
4KiB
4KiB
ストライプカウント
1
1
1
ストライプサイズ
1MiB
1MiB
1MiB
/vol0002領域は i-node を特に多く利用したい課題に優先的に利用いただくことを目的とした領域です。 領域に適した課題に利用していただくため、利用を許可制とします。 利用申請時に、i-node 数を特に多く利用する理由について記載をお願いいたします。 この領域の運用方針に沿わない利用をされている課題は利用を中止し、通常の領域へ引越しの依頼をさせていただく場合があります。
ディスク容量/ファイル数制限
項目
データ領域+シェア領域(/vol0002)
容量制限
5TiB/グループ
ファイル数制限
9.0M/グループ
ブロックサイズ
4KiB
ストライプカウント
1
ストライプサイズ
1MiB
申請についてはこちらをご確認ください
参考
FEFSについての詳細は、マニュアル「FEFSユーザーズガイド」を参照してください。
3.4.7.1. 計算ノードのクライアントキャッシュとIO性能¶
計算ノードは、入出力で使用するクライアントキャッシュを128MiBに制限しています。このため、1レコードの長さが128MiBより大きい場合に第2階層ストレージ上のファイルに対するRead性能が劣化する場合があります。I/Oの設計を行う場合、および、他システムから移行を行う場合は、1レコードの長さを128MiB以下にすることを推奨します。
C/C++利用の場合
利用者プログラム内で読み込む大きさを調整します。freadを例に取ると、size*num <= 128MiB になるようにします。
fread(buf, size, num, fp);
Fortran利用の場合
Fortranが持つ入出力バッファの大きさが影響します。この入出力バッファのデフォルト値は8MiBのため、クライアントキャッシュのサイズの影響を受けません。アプリケーション実行時に入出力バッファの大きさを指定する場合(-Wl,-gオプションなどの指定)は、128MiB以下になるようにします。
また、gzip/gunzipなどを用いて128MiBを越えるファイルを展開した場合、キャッシュの吐き出し待ちに時間を要することがあります。第2階層ストレージ上に大量のファイルを展開する場合、大きなクライアントキャッシュを持つログインノードを利用して展開することを検討してください。
3.4.8. グループ¶
ジョブを実行する時にはグループIDを指定する必要があります.
userinfoコマンド使用例
[_LNlogin]$ userinfo | grep groupList
groupList=hp210xxx,hp220xxx,fugaku
複数のグループIDが表示され、目的の課題IDに対応するグループIDがわからない場合は、各課題の代表者に確認してください。
グループリストに'fugaku'
が含まれている場合がありますが、'fugaku'
は全てのシングルアカウントが属するグループIDです。
'fugaku'
は、ジョブ実行時に指定することはできません。
ジョブスクリプト例
[_LNlogin]$ cd /vol0n0m/data/groupname/username
[_LNlogin]$ vi jobscript
#!/bin/bash
#PJM -L "node=4"
#PJM -L "rscgrp=small"
#PJM -L "elapse=1:00:00"
#PJM --mpi "max-proc-per-node=4"
#PJM -x PJM_LLIO_GFSCACHE=/vol0005
#PJM -g groupname
3.4.9. 並列ジョブの種類¶
スーパーコンピュータ「富岳」では、計算するプログラムをジョブ単位で実行します。ジョブは、必要とするノード数によって、シングルノードジョブとマルチノードジョブに分類されます。
- マルチノードジョブ複数の計算ノードを利用して実行するジョブです。ノードをまたぐプロセス並列プログラムが該当します。
- シングルノードジョブ1台の計算ノードで実行するジョブです。逐次ジョブはシングルノードジョブになります。並列ジョブは、ノード内で複数のプロセスまたはスレッドを使うものが該当します。
3.4.10. ログインノード¶
ulimitコマンドの実行例
[_LNlogin]$ ulimit -a
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 377308
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) 604800
max user processes (-u) 4096
virtual memory (kbytes, -v) 41943040
file locks (-x) unlimited
1台のログインノードあたり、次を超える資源利用を行う場合は、複数のログインノードでの分散実行やプリポストノード、富岳本体の利用をご検討ください。
資源 |
目安 |
---|---|
スレッド数 |
8スレッド |
メモリ容量 |
12GiB |
富岳ウェブサイトの「富岳ログインノードの利用時の注意点について」も参照ください。
3.4.11. I/Oノード¶
スーパーコンピュータ「富岳」は、一部の計算ノードがI/Oノードを兼ねています。
I/Oノードは次の三種類があります。
- BIO(Boot I/O node)
ノードのブートサーバになるI/Oノードです。 16ノード(1BoB)に1ノード存在します。
- SIO(Storage I/O node)
第1階層ストレージに対する入出力を担う I/Oノードです。 SIOノードには、第1階層ストレージを構成するディスク装置(SSD)が接続されています。 16ノード(1BoB)に1ノード存在します。
- GIO(Global I/O node)
第2階層ストレージ(FEFS)に対する入出力を中継するノードです。 192ノードに1ノード存在します。

I/Oノードの配置概要¶
I/OノードのCPU周波数は2.2GHzに固定されています。
ジョブ統計情報に出力されるNODE IDからI/Oノードを識別することができます。
I/Oノードの識別方法
BIO、SIO、GIO、BoBの機能についてはマニュアル「ジョブ運用ソフトウェア 概説書」を参照ください。
ログインノードにNODE IDからI/Oノードを表示するidcheckコマンドを用意しています。
-h
オプションでヘルプ内容が表示されます。[_LNlogin]$ idcheck -h Usage: idcheck [OPTION]... -h Display help -n nodeid[,...] Search node type from node ID -f <FILE> This option executes the process for node IDs written in the file that is specified by filename. [Example] 0x01010001 0x01010002 0x01010003 0x01010004
-n
オプションで複数のNODEID(カンマで区切ります)を指定して確認できます。[_LNlogin]$ idcheck -n 0x01010001,0x01010002,0x01010003,0x01010004 0x01010001 BIO 0x01010002 SIO 0x01010003 GIO 0x01010004 CN
-f
オプションでファイルに記載されたNODEID群を確認できます。[_LNlogin]$ cat aaa 0x01010001 0x01010002 0x01010003 0x01010004 [_LNlogin]$ idcheck -f aaa 0x01010001 BIO 0x01010002 SIO 0x01010003 GIO 0x01010004 CN
3.4.12. ユーザープログラムが利用可能なメモリ量の見積り¶
スーパーコンピュータ「富岳」では、ジョブが1ノードで使用できるメモリ量(ジョブメモリ量)の上限がシステムによって設定されています。
ノード種別 |
ジョブメモリ量の上限(byte) |
---|---|
BIO/SIO/GIO |
30,739,267,584 |
CN |
30,739,333,120 |
ユーザープログラムが利用可能なメモリ量は以下となります。
見積式:
AM = MJM - MPI
AM : ユーザプログラムが利用できる1ノードあたりのメモリ量 (byte)
MJM : ジョブメモリ量の上限 (byte)
MPI : MPIライブラリのメモリ使用量 (byte)
MPIライブラリのメモリ使用量の見積りについては、マニュアル「Development Studio MPI使用手引書」-「6.11 メモリ使用量の見積り式とチューニング」を参照ください。
3.4.13. 計算資源の利用の定義¶

n番目のジョブに割り当てられたノード数
384ノード以下のジョブは、指定したノード割り当て方式で、割り当てられるノード数が変わります。
torus : 12ノード単位(2*3*2)(Tofu単位)でノードが割り当てられます。 そのため、ジョブ投入時に指定したノード数よりも多いノードがジョブに割り当てられる場合があります。
mesh : 指定されたmeshを形成するのに必要なノード数が割り当てられます。 そのため、ジョブ投入時に指定したノード数よりも多いノードがジョブに割り当てられる場合があります。
noncont(デフォルト指定) : 指定されたノード数が割り当てられます。 この場合、隣接したノードが割り当てられない場合があるので、ノード間通信が他のジョブの影響を受ける場合があります。
385ノード以上のジョブは48ノード単位(2*3*8)(Shelf単位)でノードが割り当てられます。 そのため、ジョブ投入時に指定したノード数よりも多いノードがジョブに割り当てられる場合があります。 48ノード単位(2*3*8)で構成される直方体でノードを指定すると、この無駄を少なくすることができます。 Shelf単位でノードが割り当てられるため、ジョブは第1階層を占有することができます。
ノードの空き状況によっては、指定した形状を回転させて割り当てることがあるため、ジョブを投入するごとに割り当てられるノード数が変わることがあります。
:strict
オプションを指定すると回転を抑止できますが、ジョブの実行開始時刻が遅くなる場合があります。 noncontが指定されたジョブ以外は回転の影響を受けます。
スケジューラがジョブに割り当てたノード数は、ジョブ統計情報のNODE NUM (ALLOC)
やpjstat -v --choose jid,nnuma
コマンドで参照することができます。
[pjstatコマンド表示例]
[_LNlogin]$ pjstat -v --choose jid,nnuma
JOB_ID NODE_ALLOC
13132535 432:6x9x8
14049234 216
n番目のジョブの経過時間
注意
原則資源返却は行いません