Hi,
I've been having all kinds of problems trying to compile parallel Amber
(and PMEMD) with MKL libraries. First, the description of my setup.
1. OS: CentOS 5, uname -a: Linux abicluster 2.6.18-53.1.14.el5 #1 SMP
Tue Feb 19 07:18:46 EST 2008 x86_64 x86_64 x86_64 GNU/Linux
2. Compilers: Intel C/C++ and ifort 10.1.012 installed in a shared
location visible to the head node and all client nodes
3. MKL libraries: version 10.0.1.014 installed under the same /opt/intel
directory tree as the compilers
4. OpenMPI 1.2.5 compiled with the above compilers (the same I'm using
for Amber) and installed in a shared location. OpenMPI installation was
tested with a simple program of a helloworld kind that used mpirun to
start processes on the local system, as well as several client nodes.
All worked fine.
5. Relevant lines from the .bashrc:
export AMBERHOME=/data/amber9
export MPI_HOME=/data/openmpi
source /opt/intel/cce/10.1.012/bin/iccvars.sh
source /opt/intel/fce/10.1.012/bin/ifortvars.sh
PATH=/opt/intel/cce/10.1.012/bin:$PATH; export PATH
PATH=/opt/intel/fce/10.1.012/bin:$PATH; export PATH
LD_LIBRARY_PATH=$MPI_HOME/lib:$LD_LIBRARY_PATH; export
LD_LIBRARY_PATH
LD_LIBRARY_PATH=$MPI_HOME/include:$LD_LIBRARY_PATH; export
LD_LIBRARY_PATH
PATH=$MPI_HOME/bin:$PATH; export PATH
PATH=$MPI_HOME/include:$PATH; export PATH
export MKL_HOME=/opt/intel/mkl/10.0.1.014
export DO_PARALLEL="mpirun -np 4"
Serial version compiles ok with or without the -static flag, but make
test.serial fails:
cd qmmm2/2pk4; ./Run.2pk4_stan
This test not set up for parallel, skipping
cd amoeba_wat1; ./Run.amoeba_wat1
Unit 16 Error on OPEN:
restrt
Unit 16 Error on OPEN:
restrt
Unit 16 Error on OPEN:
restrt
./Run.amoeba_wat1: Program error
make: *** [test.sander.AMOEBA] Error 1
Since my primary goal is the parallel version, I'm not overly concerned,
although it is strange.
Sequence of actions to compile parallel Amber (after patching the
source):
[sasha.abicluster src]$ ./configure -opteron -openmpi
ifort_x86_64
AMBERHOME is set to /data/amber9
Setting up Amber configuration file for architecture:
ifort_x86_64
Using parallel communications library: openmpi
MPI_HOME is set to /data/openmpicd ../test
MKL_HOME is set to /opt/intel/mkl/10.0.1.014
Using MKL libraries from /opt/intel/mkl/10.0.1.014/lib/em64t
The configuration file, config.h, was successfully created.
After this, I edit config.h to replace ifort with mpif90 in FC and LOAD
flags. It doesn't compile without it, and it might be useful to have a
note about it in the installation instructions.
make parallel creates the executables, but make test.parallel fails with
this error:
[sasha.abicluster test]$ make test.parallel
export TESTsander=/data/amber9/exe/sander.MPI; make
test.sander.BASIC
make[1]: Entering directory `/data/amber9/test'
cd dmp; ./Run.dmp
This test not set up for parallel
cannot run in parallel with #residues < #pes
cd adenine; ./Run.adenine
This test not set up for parallel
cannot run in parallel with #residues < #pes
==============================================================
cd cytosine; ./Run.cytosine
/data/amber9/exe/sander.MPI: error while loading shared
libraries: libmkl_lapack.so: cannot open shared object file: No
such file or directory
/data/amber9/exe/sander.MPI: error while loading shared
libraries: libmkl_lapack.so: cannot open shared object file: No
such file or directory
/data/amber9/exe/sander.MPI: error while loading shared
libraries: libmkl_lapack.so: cannot open shared object file: No
such file or directory
/data/amber9/exe/sander.MPI: error while loading shared
libraries: libmkl_lapack.so: cannot open shared object file: No
such file or directory
./Run.cytosine: Program error
make[1]: *** [test.sander.BASIC] Error 1
make[1]: Leaving directory `/data/amber9/test'
make: *** [test.sander.BASIC.MPI] Error 2
The strange thing is that libmkl_lapack.so is located in the directory
that was happily noticed by the ./configure script. Same error is thrown
when sander.MPI is attempted to run with one of the test cases from the
Amber tutorial (which is kind of expected after the test error).
Compilation with -static flag fails invariably with the following
message:
ld: cannot find -lmpi_f90
make[1]: *** [sander.MPI] Error 1
make[1]: Leaving directory `/data/amber9/src/sander'
make: *** [parallel] Error 2
Any advice would be appreciated.
Thank you
Sasha Buzko
-----------------------------------------------------------------------
The AMBER Mail Reflector
To post, send mail to amber.scripps.edu
To unsubscribe, send "unsubscribe amber" to majordomo.scripps.edu
Received on Fri Apr 18 2008 - 21:19:19 PDT