faq:scs-faq:cluster

印刷用ページ

分散並列型クラスタシステム(TypeA)・大規模共有メモリ型システム(TypeB)FAQ

原則インタラクティブキューをご利用下さい。インタラクティブキューを使用しない場合、プログラムの実行時間やメモリ、CPU数に強い制限がかかります。

フロントエンドサーバで、負荷の高いプログラムを実行すると、他の利用者のプログラム編集やファイル操作などに支障が出ます。 CPU資源を必要とするプログラムの実行は、バッチシステムを利用して実行してください。

  • プログラムの動作確認や対話型の小さなプログラム以外は、バッチシステムを使うようにしてください。

共有ファイルシステム(/home)は、多くの利用者が利用するため、ディスクの利用制限(quota)を行っています。

クラスタシステムで、自分の利用制限値、現在の使用量、ファイル数などを表示するには、quota_state というコマンドを使います。

フロントエンドサーバで、quota_state と入力すると以下の様に使用量(GB値)、制限値(quota値)が表示されます。下記の例では、3GByte使用しており、制限値は10GByteとなっています。

[norin@scsc-fe3 ~]$ quota_state
                               Block Limits                                    |                     File Limits
Dir   Name       type             GB      quota      limit   in_doubt    grace |    files   quota    limit in_doubt    grace
/home norin       USR               3         10         11          0     none |    29487       0        0        0     none

[norin@scsc-fe3 ~]$

Intel MPI Library の実行環境設定に問題があったため、複数の小規模MPI並列ジョブが、同じCPUで実行されていたことが原因です。

現在は、デフォルトの設定を変更し、問題なく実行(別のCPUに割り当てられるようになっています)が可能です。

この問題は、Intel MPIのProcess Pinningに関する環境変数 I_MPI_PIN の設定によるものです。

デフォルトでは、環境変数 I_MPI_PIN=enable となっており、Intel MPI Libraryを使っている場合に、MPIプロセスが特定のCPUに割り当てられます。

この場合、16CPU(core)の計算ノードで、4並列のジョブを4つ実行したと想定すると、すべてのジョブが同じ4CPU(core)で実行され、残りの12CPU(core)は使用されません。(ノード全体の負荷は、25%で、1つのCPUは4つのジョブで共有されるため、ジョブあたりのCPU使用率は25%しか使うことができません。)

設定変更により、環境変数 I_MPI_PIN=disable としました。

この設定により、4つの4並列ジョブは、16CPU(core)に割り当てられ、それぞれのジョブがCPUを専有できますので、本来の計算時間でジョブを実行することができます。

Warning: no access to tty (Bad file descriptor).
Thus no job control in this shell.

ログインシェルに csh または tcsh が使われているとこのメッセージが出力されることがありますが、計算の実行に影響はありません。
(SCSのフロンエンドサーバのログインシェルは csh です)

faq/scs-faq/cluster.txt · 最終更新: 2018/06/19 14:24