NAMD-2.11 for PRIMERGY

Webpage

http://www.ks.uiuc.edu/Research/namd/

Version

2.11

Tools for Compiling

  • Intel Compiler 16.0.2.181
  • Intel MPI 5.1.3

Necessary Files for Compiling

  • NAMD_2.11_Source.tar.gz
  • fftw-linux-x86_64.tar.gz
  • tcl8.5.9-linux-x86_64.tar.gz

Procedure of Compiling

#!/bin/csh -f
umask 022
set file_namd=/home/users/${USER}/build/namd211/NAMD_2.11_Source.tar.gz
set work=/work/users/${USER}
set file_fftw=/home/users/${USER}/build/namd211/fftw-linux-x86_64.tar.gz
set file_tcl=/home/users/${USER}/build/namd211/tcl8.5.9-linux-x86_64.tar.gz
#----------------------------------------------------------------------------
cd ${work}
rm -rf NAMD_2.11_Source
tar xzf ${file_namd}
cd NAMD_2.11_Source
tar xf charm-6.7.0.tar
cd charm-6.7.0
patch -p1 <<PATCH
diff -uNr charm-6.7.0-orig/src/scripts/charmc charm-6.7.0/src/scripts/charmc
--- charm-6.7.0-orig/src/scripts/charmc 2011-05-14 04:47:47.000000000 +0900
+++ charm-6.7.0/src/scripts/charmc      2012-04-09 14:39:09.247996000 +0900
@@ -997,11 +997,11 @@
 Debug "set 4"
 if [ "\$OPTIMIZE_MODE" = "true" ]
 then
-    OPTS_CC="\$CMK_C_OPTIMIZE \$OPTS_CC"
-    OPTS_CXX="\$CMK_CXX_OPTIMIZE \$OPTS_CXX"
-    OPTS_F90="\$CMK_F90_OPTIMIZE \$OPTS_F90"
-    OPTS_LD="\$CMK_C_OPTIMIZE \$OPTS_LD"
-    OPTS_LDXX="\$CMK_CXX_OPTIMIZE \$OPTS_LDXX"
+    OPTS_CC="\$CMK_C_OPTIMIZE -xhost \$OPTS_CC"
+    OPTS_CXX="\$CMK_CXX_OPTIMIZE -xhost \$OPTS_CXX"
+    OPTS_F90="\$CMK_F90_OPTIMIZE -xhost \$OPTS_F90"
+    OPTS_LD="\$CMK_C_OPTIMIZE -xhost \$OPTS_LD"
+    OPTS_LDXX="\$CMK_CXX_OPTIMIZE -xhost \$OPTS_LDXX"
 fi
 
 # Pick up per-architecture production mode settings
diff -uNr charm-6.7.0-orig/src/arch/mpi/charmrun charm-6.7.0/src/arch/mpi/charmrun
--- charm-6.7.0-orig/src/arch/mpi/charmrun    2011-05-14 04:46:38.000000000 +0900
+++ charm-6.7.0/src/arch/mpi/charmrun    2012-04-09 15:23:55.191226000 +0900
@@ -36,11 +36,11 @@
     +p*)
         pes=`echo \$1 | awk '{print substr(\$1,3)}'`
         ;;
-        -machinefile)
-        machinefile=\$2
-        args=" "\$1" "\$2" "\$args
-        shift
-        ;;
+#        -machinefile)
+#        machinefile=\$2
+#        args=" "\$1" "\$2" "\$args
+#        shift
+#        ;;
     *)
         args=\$args" "\$1
         ;;
@@ -83,7 +83,7 @@
         mpirun -np \$pes \$args
         #    mpdallexit
       else   # normal case
-        test -z "\$machinefile" && args=-machinefile" "\$PBS_NODEFILE" "\$args
+#        test -z "\$machinefile" && args=-machinefile" "\$PBS_NODEFILE" "\$args
         echo mpirun -np \$pes \$args
         mpirun -np \$pes \$args
       fi
PATCH
setenv MPICXX mpiicpc
setenv MPICC mpiicc
setenv MPIF90 mpiifort
setenv MPIF77 mpiifort
./build charm++ mpi-linux-x86_64 --no-build-shared --with-production
cd ..
#----------------------------------------------------------------------------
tar xzf ${file_fftw}
mv linux-x86_64 fftw
tar xzf ${file_tcl}
mv tcl8.5.9-linux-x86_64 tcl
./config Linux-x86_64-icc --charm-arch mpi-linux-x86_64 --cxx-opts '-xhost -static-intel -O2 -ip -no-vec' --cxx-noalias-opts '-xhost -static-intel -O2 -fno-alias -ip -no-vec' --cc-opts '-xhost -static-intel -O2 -ip -no-vec'
cd Linux-x86_64-icc
make -j 8
make release