#contents ** コンピュータハードウエア環境 [#efcb476c] - flex 172.17.4.135 Pentium4 3.06GHz - tube 172.17.4.134 Xenon 2.8GHz x 24 - wire 172.17.4.136 Itanium2 1.5GHz x 8 - soot 172.17.4.175 Pentium4 EM64T 3.20GHz x 2 ** network 情報 [#qd380ff7] - 齋藤G 割り当てIPアドレス 172.17.4.120-172.17.4.179 50個 - DNS - gateway - 齋藤G 専用 Giga bit network ** 機種別プログラムの動かし方 [#l8f3b70d] - ifc バグが見つからないとき,例えば -check オプションをコンパイル時につけてみる. これをつけると定義した配列の外にアクセスするような処理を行ったときに, セグメンテーションフォールトでプログラムが停止するようになる. 配列の添え字の処理のチェックに使える. - mpirun - bsub -m オプションでジョブを投入するマシンを指定できる.例えば -m "hpc2 hpc3" とするとhpc2かhpc3で実行する. もし,-mで指定したマシンですでにジョブが走っていた場合は終わるまで待機している. - bw - bjobs - Intel Math Kernel Library 7.2.1 (MKL) Intelにより提供されているLAPACK.システムに標準で付属しているLAPACKよりも高速である. FLEX and TUBE -llapack -lblas -lg2c の代わりに -L/opt/intel/mkl721/lib/32 -lmkl_lapack -lmkl_ia32 -lguide -lpthread WIRE -llapack -lblas -lg2c の代わりに -L/opt/intel/mkl721/lib/64 -lmkl_lapack -lmkl_ipf -lguide -lpthread 2005年9月20日現在,MKLを利用するとパフォーマンスが大幅に低下することを確認している. 現在,原因を調査中なので従来のようにシステムに付属のLAPACKを使うことを奨励する. 注意 上記のLAPACKのオプションはコンパイルコマンドの最後につけること. - Intel Fortran Compiler 8.1 and Intel C++ Compiler 8.1 FLEXとTUBEにも8.1を導入した.使い方はCシェルなら source /opt/intel_fc_80/bin/ifortvars.csh source /opt/intel_cc_80/bin/iccvars.csh source /opt/intel_idb_80/bin/idbvars.csh をシェルの設定ファイルに追加する. なおFortranのコンパイラのコマンドが ifort に変更されているので注意. - 最適化について --基本 ---TUBE -O3 -xN をつけるとパフォーマンスが向上する.場合によっては -ipo をつける. ちなみに D-Band の Intensity を計算するプログラムでは20-30%性能が向上する. ただし,最適化によって計算結果に不具合がでる場合もあるので十分な検証が必要となる. ---WIRE -fast をつける. ** MPI 入門 [#mc6f8d6f] - sample program "hello world" - do loop の並列化 - 処理時間の異なる仕事の振り分け方 ** システム管理 [#me195d3c] - 新規アカウント e-mail, SMB, Web - shutdown システムを停止させる順番は WIRE子機またはTUBE子機 -> WIRE親機 -> FLEX -> TUBE親機 となっている. 1. TUBE子機とWIRE子機の停止 TUBE親機またはWIRE親機の /root/sbin に HOLT というシェルスクリプトがあるので実行する.実行後,順次子機の電源が落ちる. 2. WIRE親機,FLEX,TUBE親機の停止 各マシンで shutdown -h now なおマシンがハングアップし回復のために再起動する時に,ログアウトできていない アカウントがあるとNFSを終了させる処理でとまってしまう.そのため skill -KILL 端末名 で強制的にログアウトさせておくと,うまく処理が終わる(はず).端末名はwで表示 されるTTYの列で確認できる.この作業によってNFSでマウントされている/home1等が umountできるようになる. - Web 更新 - クラスタの電源投入について ジョブ管理ソフトの都合上,親機を再起動させると子機を認識しない場合がある. そのため親機を再起動したら子機も再起動する.また,クラスタ全体を起動させる 時は必ず親機が完全に起動したのを確認してから子機を起動させなければならない.