Amber10のインストール

更新日 2011-06-26 (日) 08:59:36

CentOS5.3 64Bit版(Core2Duo)にAmber10をインストール。

pmemedだけインストールできなかった。

Amberは、カリフォルニア大学のコールマン教授らのグループによって開発された、分子力学および分子動力学計算パッケージです。Amberでは、分子力学、エネルギー極小化、基準振動解析、分子動力学、自由エネルギー計算などを行うことが可能です。

intel fortranのインストール

事前に以下のファイルを追加インストール

# yum install gcc
# yum install gcc-gfortran
# yum install gcc-c++
# yum install libstdc++.so.5
# yum install compat-libstdc++-33.x86_64
# yum install compat-gcc-34-g77
# yum install compat-gcc-34-c++
# yum install compat-libgcc-296

後は、CD内install.shを起動して評価版を選択してデフォルトインストール

OpenMPIのインストール

MPI (Message-Passing Interface)[1,2,3] は メモリ分散型の並列計算をサポートするためのライブラリである。 MPI は新しいプログラミング言語ではなく、 C または Fortran から呼び出すサブプログラムのライブラリである。

以下のコマンドがないとFortranが動作していないとエラーが出るので実行しておく

# source /opt/intel/Compiler/11.0/074/bin/ifortvars.sh intel64
# cd /usr/local/src
# tar  jxvf openmpi-1.3.3.tar.bz2
# cd openmpi-1.3.3
# ./configure F77=ifort FC=ifort --prefix=/usr/local/openmpi_1_3_3

# make
# make insatll
# cd /usr/local
# ln -s openmpi_1_3_3 openmpi

AmberTooles1.2のインストール

http://ambermd.org/bugfixesat.htm

よりパッチbugfix_at.allをDownlaod

展開先を/usr/localにすること

# cd /usr/local
# tar jxvf /usr/local/src/Amber/AmberTools-1.2.tar.bz2
# cd amber10/
# export AMBERHOME=/usr/local/amber10
# patch -p0 -N < /usr/local/src/Amber/bugfix_at.all
# cd src/

# ./configure_at
(略)
The configuration file, config.h, was successfully created.

The next step is to type 'make -f Makefile_at'
# make -f Makefile_at

作成プログラムの試験

# cd ../test

(./configure_at <===必要かも?)

# make -f Makefile_at
=====================================================
Running test to do simple lmod optimization

1c1
< Glob. min. E         =     -122.793 kcal/mol
---
> Glob. min. E         =     -122.191 kcal/mol
  FAILED (probably OK if energy is -115 to -125)

=====================================================

ほとんどPASSEDするが数値誤差による上記のようなFAILEDはある

Amber10のインストール

http://ambermd.org/buxfixes10.html

よりパッチbugfix.allをDownlaod

# cd ../..  <== /usr/localに移動
# tar jxvf /usr/local/src/Amber/Amber10.tar.bz2
# cd $AMBERHOME
# patch -p0 -N < /usr/local/src/Amber/bugfix.all
# cd src
# export MKL_HOME=/opt/intel/Compiler/11.0/074/mkl
# export MPI_HOME=/usr/local/openmpi

シリアル版インストール

# ./configure_amber ifort
Setting AMBERHOME to /usr/local/amber10

Setting up Amber configuration file for architecture: ifort_x86_64
Using parallel communications library: none
MKL_HOME is set to /opt/intel/Compiler/11.0/074/mkl
Using MKL libraries from /opt/intel/Compiler/11.0/074/mkl/lib/em64t 

Testing the C compiler:
      gcc  -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -m64 -O2 -o testp testp.c
OK

Testing the Fortran compiler:
     ifort  -w95  -vec_report0 -mp1 -O0 -o testp testp.f
OK

  ----   Configuring the netCDF libraries:   --------

Configuring netcdf; (may be time-consuming)
NETCDF configure succeeded.

The configuration file, config_amber.h, was successfully created.
# make serial
# make clean

ログファイルを残すときは以下のようにする

# make serial | tee make_serial.log

以下のメッセージが最後に出る

Installation of Amber10 (serial) is complete at 2009 .......

並列版インストール

# export MPI_HOME=/usr/local/openmpi
# export PATH=/usr/local/openmpi/bin:$PATH
# ./configure_amber -openmpi ifort
  ------   Configuring the netCDF libraries:   --------

Configuring netcdf; (may be time-consuming)
NETCDF configure succeeded.
MPI_HOME is set to /usr/local/openmpi
 
The configuration file, config_amber.h, was successfully created.
# make clean 
# make parallel

(略)
mv addles ../../exe
make[1]: ディレクトリ `/usr/local/amber10/src/addles' から出ます

Installation of Amber10 (parallel) is complete at 2009年  8月 28日 金曜日 11:15:06 JST.

並列版 pmemdの別途コンパイル

これがうまくいかなかった

# cd pmemd
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/openmpi/lib
# ./configure linux_em64t ifort mpich

File config_data/interconnect.mpich being used...
configure assumes mpich files are in /usr/local/openmpi.
PMEMD Configurate successfully completed.

config.hを3箇所修正

変更前
MPI_LIBS = -L$(MPI_LIBDIR) -lmpich

変更後
MPI_LIBS = -L$(MPI_LIBDIR) -lrt -luuid -lpthread 
変更前
F90 = ifort

変更後
F90 = mpif90
変更前
LOAD = ifort

変更後
LOAD = mpif90

以下もいるかも

変更後
< F90_OPT_LO =  -O0
< F90_OPT_MED = -O2
< F90_OPT_HI =  -xP -ip -O3
---
変更前
> F90_OPT_LO =  -tpp7 -O0
> F90_OPT_MED = -tpp7 -O2
> F90_OPT_HI =  -tpp7 -xP -ip -O3

makeしたら以下で止まってしまう。うまくいけばあとは make install

/lib/cpp -traditional -P  -I/usr/local/openmpi/include -DPUBFFT  -DMPI -DSLOW_
NONBLOCKING_MPI -DDIRFRC_EFS -DDIRFRC_COMTRANS -DDIRFRC_NOVEC -DMKL 
-DFFTLOADBAL_2PROC master_setup.fpp master_setup.f90
mpif90 -c -auto -xP -ip -O3 master_setup.f90
/lib/cpp -traditional -P  -I/usr/local/openmpi/include -DPUBFFT  -DMPI -DSLOW_
NONBLOCKING_MPI -DDIRFRC_EFS -DDIRFRC_COMTRANS -DDIRFRC_NOVEC -DMKL 
-DFFTLOADBAL_2PROC pmemd.fpp pmemd.f90
mpif90 -c -auto -xP -ip -O3 pmemd.f90

動作確認

# cd $AMBERHOME/test
# make test.serial
# make test.serial.QMMM

# export DO_PARALLEL=" mpirun -np 4"

多すぎと言われるのでCPUが2なので

# export DO_PARALLEL=" mpirun -np 2"

# make test.parallel
# make test.parallel.QMMM
# make test.parallel.EVB

ここまではパスした

# make test.pmemd

これは当然だめなはず


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS