* smith 計算機システムの使い方(旧) [#b903d366]

SMITHクラスタ計算機システムはインテルまたは互換CPUを用いた計算機システムです。

** ネットワーク構成 [#x85a42b8]

~-- | 等はネットワークの接続を、~[]でくくられた名前はコンピュータの名称をそれぞれ表す。

 + 工学部内 ODINS network
 |
 |           Backbone network( 工学部ネットワークから直接アクセスできない )
 |               |
 +- [smith] -----+                          133.1.116.161 ログインサーバー
 |               |
 +- [rafiki] ----+                          133.1.116.162 アプリケーションサーバー
 |               |
 |               |                          (133.1.116.163 WEBサーバー休止中)
 |               |
 |               +-- [ita*]                 Itanium CPUシステム(撤去)
 |               |
 |               +-- [opt00], [opt01]       コンパイルサーバー(opt01 停止中)
 |               |
 |               +-- [opt02]-[opt11]        計算サーバー グループ1 (各2CORE 2CPU) mpich-opt (opt02-opt11 停止中)
 |               |
 |               +-- [opt12]-[opt21]        計算サーバー グループ2 (各4CORE 2CPU) mpich-opt2 (opt17 停止中)
 |               |
 |               +-- [opt22]-[opt36]        計算サーバー グループ3 (各4CORE 2CPU) mpich-opt3
 |               |
 |               +-- [xe00], [xe01]         計算サーバー グループ4 (xe00はコンパイルサーバー兼用)(各8CORE 2CPU) x8
 |               |
 |               +-- [xe02]-[xe06]          計算サーバー グループ5 (各12CORE 2CPU) x12
 |               |
 |               +-- [xeon00] ----+         ログイン・計算サーバー (8CORE 2CPU)
 |               |                |
 |               |                +--- [xeon01-07] 計算サーバー グループ6 (各8CORE 2CPU)
 |               |
 +- [sb100] -----+                          133.1.116.165 新計算サーバー
                 |
                 +-- [sb101]-[sb120]        計算サーバー グループ7 (各6CORE 1CPU) x20
                 |                           [Sandy-bridge Corei7-3960k]
                 +-- [corei7-3930k-1]       計算サーバー テスト用 (6CORE 1CPU) 

**ジョブの投入について [#q22a1518]
-システムで計算を実行するには、計算したい内容をジョブにしてジョブキューイングシステムに投入する必要があります。
-ジョブ管理システムはSGE(Sun Grid Engine)5.3です。
-ジョブは自動的に空いている計算機に割り当てられて実行されます。(しかしグループを超えて違う計算機には割り当てられませんので注意が必要です。)
-ジョブの作り方は下記各システムの説明に「ジョブスクリプトファイルの例」がありますので参考にしてください。
-用いるコアの数を増やすと自動的に並列度が上がりますが、通信はギガビットイーサネットで実装されていますので、あまり速くありません。ノード間通信を含む並列計算はあまり有効ではありませんのでご注意ください。
-opt parallel_environmentにジョブを投入するときは、smithかopt??でqsubコマンドを実行してください。
-xe parallel_environmentにジョブを投入するときは、xe00でqsubコマンドを実行してください。
-xeon parallel_environmentにジョブを投入するときは、xeon00でqsubコマンドを実行してください。

**キューとparallel_environmentについて [#j6529b3c]
-各計算ノードはそれぞれ別々のキューとして管理されています。
-違う規模の計算機は別々の parallel_environmentとして管理しています。(mpich-opt, mpich-opt2, mpich-opt3, x8, x12)
-通常、キューを指定せず、-peオプションで parallel_environmentを指定してください。
- parallel_environmentを指定すると、ジョブはその parallel_environmentに属するノードでのみ割り当てられます。
-投入したジョブのparallel_environmentに属するノードに空きが足りない場合は、他のparallel_environmentに空きがあっても実行されず、その parallel_environmentの他のジョブの終了を待つことになります。

**各システム [#o99a72fa]
***opt??システム [#l914a98c]
-opteron CPUで構成される計算機グループで、mpich-opt, mpich-opt2, mpich-opt3 の3 parallel_environmentからなります。

-ジョブスクリプトファイルの例
  #!/bin/csh
  #$ -cwd
  #$ -pe mpich-opt2 4
  #$ -N JOBNAME
  mpirun -nolocal -np $NSLOTS -machinefile ../$USER.$PE.$JOB_ID ./STATE_A < nfinp > nfout
  
--  -cwd はジョブを投入した時のディレクトリがジョブ開始時のディレクトリになることを指示するオプションです。
--  上のmpich-opt2の後ろの4が計算に用いるCOREの数を示すオプションです。
--  -Nオプションでジョブの名前を指定できます。(先頭文字は英字です。)
-- STATE_AにはSTATEの実行ファイルをジョブ投入前にリンクしておいてください。
-- また、fort.37等、擬ポテンシャルのファイルも同様にリンクしておいてください。
-コンパイル
--  コンパイルはopt00にログインしてifortコマンドにより行います。
--  STATEユーザーはopt用のMakefileを使用してコンパイルできます。
-  opt??にログインするには?
-- rsh opt00 等でOKです。
-ライブラリ
--  ACML,mpich-2 が利用できます。

***x?システム [#jf4030e4]
-xeon CPUで構成される計算機グループで、x8, x12 の2 parallel_environmentからなります。

-ジョブスクリプトファイルの例
  #!/bin/csh
  #$ -cwd
  #$ -pe x12 12
  #$ -N JOBNAME
  mpirun  -np $NSLOTS ./STATE_A < nfinp > nfout
--  -cwd はジョブを投入した時のディレクトリがジョブ開始時のディレクトリになることを指示するオプションです。
--  上のx12(またはx8)はx12(またはx8)にジョブ投入することを示し、後ろの12が計算に用いるCOREの数を示すオプションです。x12は12、x8は8でないと実行されないようになっていますので注意してください。
--  -Nオプションでジョブの名前を指定できます。(先頭文字は英字です。)
-- STATE_AにはSTATEの実行ファイルをジョブ投入前にリンクしておいてください。
-- また、fort.37等、擬ポテンシャルのファイルも同様にリンクしておいてください。

-コンパイル
--  コンパイルはxe00にログインしてifortコマンドまたはmpi並列の場合はmpif90コマンドにより行います。
--  STATEユーザーはxe用のMakefileを使用してコンパイルできます。
-  xe??にログインするには?
-- rsh xe00 等でOKです。
-ライブラリ
--  MKL が利用できます。

ifort xe2011(version12) のインストール記[[LinuxTips#hec6b033]]も参照。


***xeon00システム [#qf359bf3]
- xeon CPUで構成される計算機グループですが、特定のプロジェクト用のため一般利用はできません。

-ジョブスクリプトファイルの例
  #!/bin/csh
  #$ -cwd
  #$ -pe x8 8
  #$ -N JOBNAME
  mpirun  -np $NSLOTS ./STATE_A < nfinp > nfout

***sb100システム [#f7c64b2d]
- Sanday-bridge アーキテクチャーのCore i7 CPUで構成される新しい計算機グループです。各ノードは1CPU(6core)で構成されています。メモリは16GBです。
- AVX機能があり高速に計算できますが、組み込んだ新しいコンパイラの制限?(バグ?)のためコンパイルが正常に終了しません。特定のファイルだけ最適化レベルを落としてコンパイルする必要があります。エラーが出たら、CPPSRCフォルダに移動して、make.sysに書かれているオプションを設定し、最適化レベルだけ-O0にして手動でコンパイルしてください。分からなければ、他の人のSTATEバイナリをコピーして使ってください。
- smithのデータを直接見れます。/home2にsmithの/homeをNFSリンクしていますのでアクセス可能です。
- スクリプトの例(cshのみ)
-- ハイブリッド並列(12コア確保、各ノードにプロセス確保、プロセスごと6-OMPスレッド)
 #!/bin/csh -f
 #$ -pe x6 12
 #$ -cwd
 #$ -N erace
 setenv OMP_NUM_THREADS 6
 ln -fs ~/STATE/src/STATE_5.4.1/wrksrc6i5_/STATE .
 mpirun  -perhost 1 -np $NHOSTS ./STATE < nfinp > nfout
-- フラット並列(12コア)
 #!/bin/csh -f
 #$ -pe x6 12
 #$ -cwd
 #$ -N erace
 ln -fs ~/STATE/src/STATE_5.4.1/STATE .
 mpirun -np $NSLOTS ./STATE < nfinp > nfout

----------------------------------------------------------------------------------------------

* SXで実行させた結果(バイナリデータ)を読み込みたい。 [#ab45c110]
- 可能です。
 
zaj.data, potention.data, restart.dataについて下記のようにして、読み込み時のエンディアンを変更します。出力もSX互換のままになりますので、さらに継続して使うときは注意してください。
 setenv F_UFMTENDIAN 43,70,80 (cshの場合)
 export F_UFMTENDIAN=43,70,80 (bashの場合)
 F_UFMTENDIAN=43,70,80 ; export F_UFMTENDIAN (shの場合)

----------------------------------------------------------------------------------------------

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS