「SSH公開鍵登録システムについて」から公開鍵を登録する。
$ ssh your_id@sekirei.issp.u-tokyo.ac.jp
$ ssh-add ~/.ssh/id_rsaとする。
$ mkdir ~/STATE/src $ mv state_x.x.x.tar.gz ~/STATE/src $ mv make.arch ~/STATE/src $ cd ~/STATE/src $ tar xzvf state_x.x.x.tar.gz $ cd STATE_x.x.x
デフォルトで読み込まれるモジュールは以下のコマンドで確認:
$ module list Currently Loaded Modulefiles: 1) intel/16.0.3.210 2) mpt/2.14 3) gnu/4.8.5 4) cuda/7.0
2016年6月10日以降コンパイラが16.0.3.210に更新されていることに注意。
これに合わせてMPIも5.1.3.210を読み込む:
$ module load intel-mpi/5.1.3.210 $ module list Currently Loaded Modulefiles: 1) intel/16.0.3.210 3) gnu/4.8.5 5) intel-mpi/5.1.3.210 2) mpt/2.14 4) cuda/7.0
追記: 上の設定で計算を行うと、intel/16.0.3.210に含まれるintel-mkl/16.0.3.210のバグのため
Fatal error in PMPI_Comm_create: Other MPI error, error stack: PMPI_Comm_create(669)................: (以下略)
のようなエラーを出して計算が止まることが判明した。 応急処置としてintel/16.0.3.210の代わりにintel/16.0.1.150をロードする。
$ module unload intel/16.0.3.210 $ module load intel/16.0.1.150 $ module list Currently Loaded Modulefiles: 1) mpt/2.14 3) cuda/7.0 5) intel-mpi/5.1.3.210 2) gnu/4.8.5 4) intel/16.0.1.150
この状態でSTATEをコンパイルし、ジョブスクリプトでも同様のモジュール設定を行う。
############################## for LX(Xeon,smith) ############################# F90 = mpiifort LINKER = mpiifort OMP = -qopenmp OPT3 = -O3 -fp-model strict -axCORE-AVX2 FLAGS = $(OMP) $(OPT3) -fixed -extend_source -xHOST 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_ ################################################################################
OMPで-openmpを使ってmakeすると
ifort: command line remark #10411: option '-openmp' is deprecated and will be removed in a future release. Please use the replacement option '-qopenmp'
なる警告が出るので-qopenmpに変更した。
$ make cpping m_para.f90 Compiling m_para.f90 ...
bashの場合:
#!/bin/sh #QSUB -queue F36cpu #QSUB -node 8 #PBS -N Pt111_3x3 #PBS -m be #PBS -l walltime=24:00:00 # 作業ディレクトリでモジュールを読み込む cd $PBS_O_WORKDIR . /etc/profile.d/modules.sh module load intel/16.0.1.150 intel-mpi/5.1.3.210 ln -fs ~/STATE/src/STATE5.6.0_20151026/STATE STATE ln -fs ~/STATE/gncpp/Pt_pbe1s_TM/\#vnew.data fort.37 # 環境変数FORT5, FORT6にそれぞれ入力ファイル名、出力ファイル名を設定する。 # sh, bashではexport、csh, tcshではsetenvを用いることに注意。 export FORT5=nfinp_1 export FORT6=nfout_1 mpijob ./STATE export FORT5=nfinp_2 export FORT6=nfout_2 mpijob ./STATE export FORT5=nfinp_3 export FORT6=nfout_3 mpijob ./STATE