본문 바로가기

IT n Linux

Amber9 설치하기

제가 다니는 대학원에서 Amber 를 사용합니다. 이번에 cluster 를 정비하면서 Amber 를 설치하였는데, 은근히 까다롭더군요. 그래서 설치법을 정리합니다.

여기서는 CentOS 5.1, OpenMPI (1.2.6), Intel Fortran Compiler (10.1.015) , Intel Math Kernel Library (10.0.2.018) 환경에서 Amber 를 설치하도록 하겠습니다.

필요한 Library 설치하기

Amber9 을 정상적으로 설치하기 위해서는 다음 Library 가 필요합니다.
  • libXt-devel
  • libXext-devel
note. CentOS 4.x 에서는 "xorg-x11-devel" 을 설치해야 합니다.

CentOS 5.0 이상에서는 기본으로 제공하므로 yum 을 이용해서 간편하게 설치할 수 있습니다.
yum install libXt-devel libXext-devel
만약 yum 을 이용한 원격 설치가 불가능하다면, centos 사이트에서 (추천 : ftp://ftp.daum.net/centos ) rpm 파일을 받아서 직접 설치해 주면 됩니다. 이 경우 같이 설치되야 할 다른 rpm 들도 모두 설치해 주셔야 합니다. 저의경우 libXt-devel 을 설치하기 위해서 다음 프로그램들을 추가로 설치해야 했습니다. 물론 yum 을 이용한다면 모두 자동으로 진행해 줍니다.
  • libICE-devel
  • libSM-devel
  • mesa-libGL-devel
  • xorg-x11-proto-devel
  • libXdmcp-devel
  • libXau-devel
  • libX11-devel
  • libXt-devel

ld.so.cache  갱신
library 설치가 끝나면 ld.so.cache 를 갱신시켜줘야 합니다. 다음 명령어로 갱신할 수 있습니다.
# ldconfig

Amber 설치

Amber 는 Compile 후에 별도로 Install 하는 과정이 없습니다. 따라서 Amber 를 설치할 위치로 옮긴 상태에서 시작합니다. 여기서는 /opt/amber9 디렉토리가 설치디렉토리 입니다. 이 설치 경로를 환경변수에 잡아 줍니다.
# export AMBERHOME=/opt/amber9
그리고 Amber 에서 필요한 Intel Math Kernel Library 의 디렉토리를 지정해주어야 합니다. 저는 MKL 를 다음 경로에 설치해두었습니다.
# export MKL_HOME=/opt/intel/mkl/10.0.2.018
Parallel 설치를 하실분은 MPI 관련환경변수도 설정하셔야 합니다.
# export MPI_HOME=/opt/openmpi

Serial 설치하기

먼저 serial  설치입니다.
# ./configure ifort_ia32
# make serial
x86_64 환경이라면
# ./configure ifort_x86_64
# make serial
configure 의 끝에 붙는 것은 compiler  종류 입니다. Amber9 이 현재 지원하는 Compiler 종류는 다음과 같습니다.
absoft, compaqf90, hpf90, ifort_ia32, ifort_ia64, ifort_x86_64,  pgf90, sgi_altix, sgi_mips, sparc, xlf90_aix, xlf90_suse, xlf90_macosx, ifort_macosx, g95, gfortran, pathscale
이중 자신에 맞는 것을 이용하시면 됩니다.

Serial 설치 테스트 하기
Amber 는 설치후 프로그램이 작동하는데 문제가 있는지를 검사하는 방법을 제공합니다.



Parallel 설치하기

Amber 를 MPI 로 돌리기 위해서 MPI library 와 연동해야 합니다. 여기서는  먼저 configure 설정을 해야 합니다.
# ./configure -openmpi ifort_ia32
x86_64 환경이라면 ifort_ia32 대신 ifort_x86_64 를 넣으시면 됩니다. 여기서 이제 make parallel 을 하면되는데, 저의 경우 컴파일 과정에서 문제가 생겼습니다.
cpp -traditional -I/opt/openmpi/include -P -DMPI -DMKL  evb_init.f > _evb_init.f
ifort -c -w95   -mp1 -O0 -FR  -o evb_init.o _evb_init.f
fortcom: Error: _evb_init.f, line 171: Cannot open include file 'mpif-common.h'
.........
이런 에러인데, 보면 mpif-common.h 파일을 찾지 못한 다는 것입니다. 이 파일은 제가 적은 OpenMPI 를 설치하기 데로 설치하셨다면, /opt/openmpi/include 에 있습니다. 이 에러를 수정하기 위해서 config.h 파일을 수정해 줍니다. 이 파일을 열어서 49, 50번 줄을 다음 내용으로 수정해 줍니다.
49 FFLAGS=  -w95 -I/opt/openmpi/include  -mp1 -O0 $(LOCALFLAGS) $(AMBERBUILDFLAGS)
50 FOPTFLAGS=  -w95 -I/opt/openmpi/include -mp1 -ip -O3 $(LOCALFLAGS) $(AMBERBUILDFLAGS)
이제 컴파일을 합니다.
# make parallel
설치가 완료되면 ${AMBERHOME}/exe/ 디렉토리에 다음 파일들이 추가로 생성됩니다.
lmodprmtop, sander.MPI, sander.LES.MPI, sander.PIMD.MPI




관련 사이트