SMITHクラスタ計算機システムはインテルまたは互換CPUを用いた計算機システムです。
smithにログインする場合
$ ssh -l [userID] 133.1.116.161
または
$ ssh [userID]@133.1.116.161
X11 のフォワーディングを許可する場合
$ ssh -Y -l [userID] 133.1.116.161
または
$ ssh -Y [userID]@133.1.116.161
を実行する。
sb100にログインする場合は同様に
$ ssh -l [userID] 133.1.116.16
などとすれば良い。
初めてログインする際には
$ passwd
を実行してパスワードを変更すること。 ここで``$``はコマンドプロントを表している。
ローカルホストで以下を実行
ssh-keygen
デフォルトでは秘密鍵と公開鍵がそれぞれ .ssh/id_rsaと .ssh/id_rsa.pubの名前で保存される。 次に.ssh/id_rsa.pubの内容をリモートホストの .ssh/authorized_keysに追加する。 (スパコンセンターではwebページを通じて公開鍵を登録することが多い) 森川研では公開鍵を登録するwebページが無いので
cat id_rsa.pub
でid_rsa.pubの内容をターミナルで表示、コピーし、リモートホストのauthorized_keysにコピーする。
従来のsmithとは異なり、コンパイラとライブラリの設定にはmoduleを使用します。 使用可能なモジュールを調べるためには
$ module available
を実行します。特定のモジュールをロードするためには以下を実行します。
$ module load intel/2020.2.254 $ module load intelmpi/2020.2.254 $ module load python/3.8
しログアウトするとこの設定は破棄されますので、~/.bashrcに記録しておきます。
module load intel/2020.2.254 module load intelmpi/2020.2.254 module load python/3.8
古いintelコンパイラ用の設定は以下のように
# source /home/opt/settings/2017.4/intel-compiler.sh # source /home/opt/settings/2017.4/intel-mpi.sh
などとしてコメントアウト、あるいは削除することを忘れないようにしましょう。
qsub -q xh1.q -pe x24 24 run.csh
ジョブの状態を見るには
qstat
を実行します。特定のユーザのジョブの状態を見るには
qstat -u [user name]
ジョブをキャンセルするには
qdel [job ID]
を実行します。Job IDはqstatで表示される1コラム目の数字です。
プロセッサの種類 ノード内 ジョブ投入 キュー 並列環境 ノード間 コア数/CPU数 サーバー 並列ファブリック ・グループ4 xeon 8/2 smith/rafiki/tiamat xe1.q x8 ・グループ5 xeon 12/2 smith/rafiki/tiamat xe2.q x12 ・グループ7 core i7 sandy-bridge 6/1 sb100 all.q x6 ・グループ8 xeon sandy-bridge 16/2 smith/rafiki/tiamat xs2.q x16 ・グループ9 xeon ivy-bridge 16/2 smith/rafiki/tiamat xi1.q x16 ・グループ10 xeon Haswell 24/2 smith/rafiki/tiamat xh1.q x24 infini-band ・グループ11 xeon Haswell 24/2 smith/rafiki/tiamat xh2.q x24 infini-band ・グループ12 xeon Haswell 24/2 smith/rafiki/tiamat yh1.q x24 ・グループ13 xeon Broadwell 32/2 smith/rafiki/tiamat xb1.q x32 infini-band ・グループ14 xeon Skylake 32/2 smith/rafiki/tiamat x17.q x32 infini-band ・グループ15 xeon Cascade Lake 40/2 smith/rafiki/tiamat x19.q x40 infini-band
#!/bin/csh #$ -cwd #$ -pe x12 12 #$ -N JOB_NAME ← ジョブの名称を設定できる mpirun -np $NSLOTS ./STATE_A < nfinp > nfout
#$ -S /bin/bash #$ -cwd #$ -q xe2.q #$ -pe x12 12 #$ -N CO #$ -o CO_out #$ -e CO_err # module load intel/2020.2.254 module load intelmpi/2020.2.254 # export OMP_NUM_THREADS=1 # SRCDIR=${HOME}/STATE/src/state-5.6.6/src PPDIR=${HOME}/STATE/gncpp MPI_COMMAND="mpirun -np ${NSLOTS}" # ln -fs ${SRCDIR}/STATE ./STATE # ln -fs ${PPDIR}/C_pbe1/#vnew.data fort.37 ln -fs ${PPDIR}/O_pbe1/#vnew.data fort.38 # INPUT_FILE=nfinp_dav OUTPUT_FILE=nfout_dav # ${MPI_COMMAND} ${STATE} < ${INPUT_FILE} > ${OUTPUT_FILE}
ifort xe2011(version12) のインストール記LinuxTipsも参照。
#!/bin/csh -f #$ -pe x6 12 #$ -cwd #$ -N JOB_NAME ← ジョブの名称を設定できる setenv OMP_NUM_THREADS 6 ln -fs ~/STATE/src/STATE_5.4.1/wrksrc6i5_/STATE . mpirun -perhost 1 -np $NHOSTS ./STATE < nfinp > nfout
#!/bin/csh -f #$ -pe x6 12 #$ -cwd #$ -N JOBNAME ln -fs ~/STATE/src/STATE_5.4.1/STATE . mpirun -np $NSLOTS ./STATE < nfinp > nfout
#!/bin/csh -f #$ -cwd #$ -q xs2.q #$ -pe x16 32 #$ -N JOB_NAME ← ジョブの名称を設定できる #$ -j y module load intel/2020.2.254 module load intelmpi/2020.2.254 setenv I_MPI_PIN 4 #setenv I_MPI_FABRICS shm:dapl #setenv I_MPI_FABRICS shm:ofa setenv I_MPI_FABRICS shm:tcp #setenv I_MPI_DEBUG 7 ln -fs ~/STATE/src/develop/STATE5.6.0/STATE STATE ln -fs ~/STATE/gncpp/pot.O_pbe1 fort.37 ln -fs ~/STATE/gncpp/pot.H_lda1 fort.38 setenv OMP_NUM_THREADS 1 cat $PE_HOSTFILE | awk '{ print $1":"$2/ENVIRON["OMP_NUM_THREADS"] }' > hostfile.$JOB_ID mpirun ./STATE < nfinp_1 > nfout_1
#!/bin/csh -f #$ -cwd #$ -q xs2.q #$ -pe x16 32 #$ -N JOB_NAME ← ジョブの名称を設定できる #$ -j y module load intel/2020.2.254 module load intelmpi/2020.2.254 setenv I_MPI_PIN 1 #setenv I_MPI_FABRICS shm:dapl #setenv I_MPI_FABRICS shm:ofa setenv I_MPI_FABRICS shm:tcp #setenv I_MPI_DEBUG 7 ln -fs ~/STATE/src/develop/STATE5.6.0/STATE STATE ln -fs ~/STATE/gncpp/pot.O_pbe1 fort.37 ln -fs ~/STATE/gncpp/pot.H_lda1 fort.38 setenv OMP_NUM_THREADS 1 ←ココが違うだけ cat $PE_HOSTFILE | awk '{ print $1":"$2/ENVIRON["OMP_NUM_THREADS"] }' > hostfile.$JOB_ID mpirun ./STATE < nfinp_1 > nfout_1
!/bin/csh -f #$ -cwd #$ -q xi1.q #$ -pe x16 32 #$ -N JOB_NAME ← ジョブの名称を設定できる #$ -j y module load intel/2020.2.254 module load intelmpi/2020.2.254 setenv I_MPI_PIN 1 #setenv I_MPI_FABRICS shm:dapl #setenv I_MPI_FABRICS shm:ofa setenv I_MPI_FABRICS shm:tcp #setenv I_MPI_DEBUG 7 ln -fs ~/STATE/src/develop/STATE5.6.0/STATE STATE ln -fs ~/STATE/gncpp/pot.O_pbe1 fort.37 ln -fs ~/STATE/gncpp/pot.H_lda1 fort.38 setenv OMP_NUM_THREADS 1 ← hybrid計算の場合はここの数値を変える cat $PE_HOSTFILE | awk '{ print $1":"$2/ENVIRON["OMP_NUM_THREADS"] }' > hostfile.$JOB_ID mpirun ./STATE < nfinp_1 > nfout_1
!/bin/csh -f #$ -cwd #$ -q xh1.q #$ -pe x24 48 #$ -N JOB_NAME ← ジョブの名称を設定できる #$ -j y module load intel/2020.2.254 module load intelmpi/2020.2.254 setenv I_MPI_PIN 1 setenv I_MPI_FABRICS shm:tcp ← xh1 の場合 shm:dapl or shm:ofa でinfinibandが使えます #setenv I_MPI_DEBUG 7 ln -fs ~/STATE/src/develop/STATE5.6.0/STATE STATE ln -fs ~/STATE/gncpp/pot.O_pbe1 fort.37 ln -fs ~/STATE/gncpp/pot.H_lda1 fort.38 setenv OMP_NUM_THREADS 1 ← hybrid計算の場合はここの数値を変える cat $PE_HOSTFILE | awk '{ print $1":"$2/ENVIRON["OMP_NUM_THREADS"] }' > hostfile.$JOB_ID mpirun ./STATE < nfinp_1 > nfout_1
!/bin/csh -f #$ -cwd #$ -q xb1.q #$ -pe x32 64 #$ -N JOB_NAME ← ジョブの名称を設定できる #$ -j y module load intel/2020.2.254 module load intelmpi/2020.2.254 setenv I_MPI_PIN 1 setenv I_MPI_FABRICS shm:dapl ← shm:ofa #setenv I_MPI_DEBUG 7 ln -fs ~/STATE/src/develop/STATE5.6.0/STATE STATE ← STATEの適切なバージョンを使用 ln -fs ~/STATE/gncpp/pot.O_pbe1 fort.37 ln -fs ~/STATE/gncpp/pot.H_lda1 fort.38 setenv OMP_NUM_THREADS 1 ← hybrid計算の場合はここの数値を変える cat $PE_HOSTFILE | awk '{ print $1":"$2/ENVIRON["OMP_NUM_THREADS"] }' > hostfile.$JOB_ID mpirun ./STATE < nfinp_1 > nfout_1
!/bin/csh -f #$ -cwd #$ -q x17.q #$ -pe x32 64 #$ -N JOB_NAME ← ジョブの名称を設定できる #$ -j y module load intel/2020.2.254 module load intelmpi/2020.2.254 setenv I_MPI_PIN 1 setenv I_MPI_FABRICS shm:dapl ← shm:ofa #setenv I_MPI_DEBUG 7 ln -fs ~/STATE/src/develop/STATE5.6.0/STATE STATE ← STATEの適切なバージョンを使用 ln -fs ~/STATE/gncpp/pot.O_pbe1 fort.37 ln -fs ~/STATE/gncpp/pot.H_lda1 fort.38 setenv OMP_NUM_THREADS 1 ← hybrid計算の場合はここの数値を変える cat $PE_HOSTFILE | awk '{ print $1":"$2/ENVIRON["OMP_NUM_THREADS"] }' > hostfile.$JOB_ID mpirun ./STATE < nfinp_1 > nfout_1
module load intel/2020.2.254 module load intelmpi/2020.2.254
################################## for (Xeon,smith) ################################# F90 = mpiifort LINKER = mpiifort OMP = -qopenmp OPT3 = FFLAGS= $(OMP) $(OPT3) -xSSE4.2 -axCOMMON-AVX512,CORE-AVX512,CORE-AVX2,CORE-AVX-I,AVX FLAGG = $(OMP) $(OPT3) FLAGD = $(OMP) FFTW_DIR=$(MKLROOT)/include/fftw INCLUDE = -I$(FFTW_DIR) LIBS = -lmkl_scalapack_lp64 -lmkl_blacs_intelmpi_lp64 -mkl=parallel CPPDIR = /usr/bin CPP = $(CPPDIR)/cpp -P -C -traditional P_FLAGS = -D_INTEL_DAVIDSON_ -D_MKL_FFTW_ -D_FFTW3_ -D_TIMER_ -D_OPENMP_FUNC_ -D_SCALAPACK_ \ -D_ALLGATHERV_NOOVERLAP_ ######################################################################
あるいは
################################## for (Xeon,smith) ################################# F90 = mpiifort LINKER = mpiifort OMP = -qopenmp OPT3 = FLAGS = $(OMP) $(OPT3) -axCOMMON-AVX512,CORE-AVX512,CORE-AVX2,CORE-AVX-I,AVX,SSE4.2,SSE4.1,SSSE3,SSE3,SSE2 -fixed -extend_source FLAGG = $(OMP) $(OPT3) FLAGD = $(OMP) FFTW_DIR=$(MKLROOT)/include/fftw INCLUDE = -I$(FFTW_DIR) #for intelmpi LIBS = -lmkl_scalapack_lp64 -lmkl_blacs_intelmpi_lp64 -mkl=parallel CPPDIR = /usr/bin CPP = $(CPPDIR)/cpp -P -C -traditional ##for intelmpi P_FLAGS = -D_INTEL_DAVIDSON_ -D_MKL_FFTW_ -D_FFTW3_ -D_TIMER_ -D_OPENMP_FUNC_ -D_SCALAPACK_ \ -D_ALLGATHERV_NOOVERLAP_ ################################################################################
過去の情報はSmithシステムの使い方 (旧) を参照して下さい。
-- | 等はネットワークの接続を、[]でくくられた名前はコンピュータの名称をそれぞれ表す。
+ 工学部内 ODINS network | | Backbone network( 工学部ネットワークから直接アクセスできない ) | | +- [smith] -----+ 133.1.116.161 ログイン&アプリケーションサーバー & ファイルサーバー +- [rafiki] ----+ 133.1.116.162 ログイン&アプリケーションサーバー & バックアップ +- [tiamat] ----+ 133.1.116.211 ログイン&アプリケーションサーバー | | | | ■現役ノード■ | +-- [xe00], [xe01] 計算サーバー グループ4 (各ノード 8CORE (2CPU)) 並列環境=x8 キュー=xe1.q | +-- [xe02]-[xe06] 計算サーバー グループ5 (各ノード12CORE (2CP)U) 並列環境=x12 キュー=xe1.q | +-- [xe02]-[xe06] 計算サーバー グループ5 (各ノード12CORE (2CPU)) 並列環境=x12 キュー=xe1.q | | | +-- [xs01]-[xs18] 計算サーバー グループ8 (各ノード16CORE (2CPU)) 並列環境=x16 キュー=xs2.q | | | +-- [xi01]-[xi12] 計算サーバー グループ9 (各ノード16CORE (2CPU)) 並列環境=x16 キュー=xi1.q | | | +-- [xh01]-[xh17],[xh19]-[xh34] | | 計算サーバー グループ10 (各ノード16CORE (2CPU)) 並列環境=x24 キュー=xe1.q | +-- [xh18],[xh35]-[xh43] 計算サーバー グループ11 (各ノード24CORE (2CPU)) 並列環境=x24 キュー=xh2.q | +-- [yh01]-[yh03] 計算サーバー グループ12 (各ノード24CORE (2CPU)) 並列環境=x24 キュー=yh1.q 濱本先生専用 | +-- [xb01]-[xb14] 計算サーバー グループ13 (各ノード32CORE (2CPU)) 並列環境=x32 キュー=xb1.q | +-- [x1701]-[x1706] 計算サーバー グループ14 (各ノード32CORE (2CPU)) 並列環境=x32 キュー=x17.q | | | | ■引退ノード■ | +-- [it??]-[it??] 計算サーバー グループ0 (itanium) | +-- [opt00], [opt01] コンパイルサーバー(opteron,opt01) | +-- [opt02]-[opt11] 計算サーバー グループ1 (各ノード2CORE (2CPU)) mpich-opt (opt02-opt11 停止中) | +-- [opt12]-[opt21] 計算サーバー グループ2 (各ノード4CORE (2CPU)) 並列環境=mpich-opt2 | +-- [opt22]-[opt36] 計算サーバー グループ3 (各ノード4CORE (2CPU)) 並列環境=mpich-opt3 | +-- [xeon00] ----+ サブログイン・計算サーバー (ノード8CORE (2CPU)) | | +--- [xeon01-07] 計算サーバー グループ6 (各ノード8CORE (2CPU)) | | | | +- [sb100] -----+ 133.1.116.165 別グループ計算サーバー | +-- [sb101]-[sb120] 計算サーバー グループ7 (各ノード6CORE (1CPU)) 並列環境=