NAMD-2.9

ウェブページ

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

バージョン

2.9

ビルド環境

  • Intel Composer XE 2011 sp1.8.273
  • Intel MPI 4.0.2.003

ビルドに必要なファイル

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

ビルド手順

#!/bin/csh -f
umask 022
set file_namd=/home/users/${USER}/build/namd29/NAMD_2.9_Source.tar.gz
set work=/work/users/${USER}
set file_fftw=/home/users/${USER}/build/namd29/fftw-linux-x86_64.tar.gz
set file_tcl=/home/users/${USER}/build/namd29/tcl8.5.9-linux-x86_64.tar.gz
#----------------------------------------------------------------------------
cd ${work}
if (-d NAMD_2.9_Source) then
  mv NAMD_2.9_Source NAMD_2.9_Source-erase
  rm -rf NAMD_2.9_Source-erase &
endif
tar xzf ${file_namd}
cd NAMD_2.9_Source
tar xf charm-6.4.0.tar
cd charm-6.4.0
patch -p1 <<PATCH
diff -uNr charm-6.4.0-orig/src/scripts/charmc charm-6.4.0/src/scripts/charmc
--- charm-6.4.0-orig/src/scripts/charmc 2011-05-14 04:47:47.000000000 +0900
+++ charm-6.4.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.4.0-orig/src/arch/mpi/charmrun charm-6.4.0/src/arch/mpi/charmrun
--- charm-6.4.0-orig/src/arch/mpi/charmrun    2011-05-14 04:46:38.000000000 +0900
+++ charm-6.4.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 smp --no-build-shared --with-production -j8
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-smp --cxx-opts '-xhost -i-static -O3 -ip -fno-rtti' --cc-opts '-xhost -i-static -O3 -ip -fno-rtti'
cd Linux-x86_64-icc
make -j 8
#----------------------------------------------------------------------------
cd ${work}/NAMD_2.9_Source
rm -rf Make.charm Make.depends Makefile arch charm-6.4.0.tar charm-6.4.0 config fftw psfgen src tcl ug
cd Linux-x86_64-icc
mv charmrun flipbinpdb flipdcd namd2 psfgen sortreplicas ..
cd ..
rm -rf Linux-x86_64-icc