AMBER Archive (2009)Subject: [AMBER] Compiling AMBER 10 (parallel, MPICH2) on Mac OS X Intel w/gcc, ifort, icc
From: David Watson (dewatson_at_olemiss.edu)
Date: Thu Jul 23 2009 - 15:03:59 CDT
System/software configuration:
MacBook, 2 GHz Intel Core 2 Duo
Xcode 3.1.3
Intel Fortran 11.1 (058)
MPICH2-1.1.1
Installing developer tools:
Uninstalled previous versions of Intel Software Development Products
Installed Xcode 3.1.3
Installed Intel Fortan Compiler 11.1 (058)
Installed Intel C++ Compiler 11.1 (058)
Edited ~/.bash_profile to include
# BEGIN bash configuration for AMBER10 compilation
. /opt/intel/Compiler/11.1/058/bin/ifortvars.sh ia32
. /opt/intel/Compiler/11.1/058/bin/iccvars.sh ia32
. /Library/Frameworks/Intel_MKL.framework/Versions/Current/tools/
environment/mklvars32.sh
MPI_HOME=/opt/mpich2
export MPI_HOME
MKL_HOME=/Library/Frameworks/Intel_MKL.framework/Versions
export MKL_HOME
# END bash configuration for AMBER10 compilation
Configured MPICH2 with the following script
# BEGIN file mpich2_for_mac.sh
export CC=icc
export CFLAGS="-xHost -I/opt/intel/Compiler/11.1/058/lib"
export F77=ifort
export FFLAGS="-xHost -I/opt/intel/Compiler/11.1/058/lib"
export F90=ifort
export F90FLAGS="-xHost -I/opt/intel/Compiler/11.1/058/lib"
export CXX=icpc
export CXXFLAGS="-xHost -I/opt/intel/Compiler/11.1/058/lib"
export LDFLAGS="-L/opt/intel/Compiler/11.1/058/lib"
./configure --prefix=/opt/mpich2
# END file mpich2_for_mac.sh
Ran the mpich2 configure script, then executed "make" and "make
install" to install mpich2 executables and libraries in /opt/mpich2
Configured parallel installation of amber10 with
./configure_amber -openmp -mpich2 -nosanderidc ifort_macosx
Edited the config_amber.h file
added -xHost to both the FFLAGS and FOPTFLAGS
changed LOADLIB to:
LOADLIB= -L$(MKL_HOME)/lib/32 $(MKL_HOME)/lib/32/
libmkl_solver.a -lmkl_intel -lmkl_intel_thread -lmkl_core -lmkl_lapack
-openmp -lpthread
Compiled amber parallel
Proceeded to configure pmemd with
./configure linux_p4 ifort mpich2 bintraj
and made the following changes to config.h
MATH_LIBS= -L$(MKL_HOME)/lib/32 $(MKL_HOME)/lib/32/
libmkl_solver.a -lmkl_intel -lmkl_intel_thread -lmkl_core -openmp -
lpthread
MPI_LIBS = -L$(MPI_LIBDIR) -lmpich -lpthread
CPP = /usr/bin/cpp
F90 = mpif90
F90_OPT_HI = -xHost -ip -O3
LOAD = mpif90
LOADLIBS = -limf -lsvml
Compiled pmemd parallel
Nearly all of the tests, except the noesy and evb/
poh_dbonds_umb_dg_UFF_9DG* tests ran and gave acceptable results.
Go ahead, bug me again about -xHost, somebody!
The Intel Fortran Compiler User and Reference Guide says that this
option "Can generate instructions for the highest instruction set
available on the compilation host processor." (Fortran 11, for Mac OS X)
Is this something that shouldn't be done?
As long as I'm running it on the same host that I compiled on, this
should be fine, right?
_______________________________________________
AMBER mailing list
AMBER_at_ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
|