NAMD v2.9 installation

Contents

1. Prerequisites
2. Installation steps
3. Execution and Testing
4. Known errors and solutions
5. References

1. Prerequisites

  • MPI
  • FFTW
  • TCL (optional)

2. Installation steps

2.1 Download NAMD source package

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

2.2 Untar, it creates directory NAMD_2.9_Source/

tar -xvf NAMD_2.9_Source.tar.gz

2.3 Compilation

2.3.1 Change to directory NAMD_2.9_Source

cd NAMD_2.9_Source

2.3.2 Modify the following files

  • NAMD_2.9_Source/Make.charm, mention charm directory

1 CHARMBASE = /opt/charm-6.5.0

  • NAMD_2.9_Source/arch/Linux-x86_64-icc.arch, mention charm architecture name

1 NAMD_ARCH = Linux-x86_64
2 CHARMARCH = mpi-linux-x86_64-ifort-mpicxx

Note : If charm++ built using IB ( ibverbs ) then use CHARMARCH=net-linux-x86_64-ibverbs-ifort-icc

  • NAMD_2.9_Source/arch/Linux-x86_64-icc.archLinux-x86_64.fft , edit fft library path

2 FFTDIR=/opt/intel/mkl    ## FFTW installation path
3 FFTINCL=-I$(FFTDIR)/include/fftw
4 #FFTLIB=-L$(FFTDIR)/lib -lrfftw -lfftw
5 FFTLIB=-L$(FFTDIR)/lib/intel64 -lrfftw -lfftw

  • NAMD_2.9_Source/arch/Linux-x86_64-icc.archLinux-x86_64.fft3 , edit fft library path

2 FFTDIR=/opt/intel/mkl ## FFTW installation path
3 FFTINCL=-I$(FFTDIR)/include/fftw
4 FFTLIB=-L$(FFTDIR)/lib/intel64 -mkl -lfftw3xf_intel
5 FFTFLAGS=-DNAMD_FFTW -DNAMD_FFTW_3
6 FFT=$(FFTINCL) $(FFTFLAGS)

  • NAMD_2.9_Source/arch/Linux-x86_64-icc.archLinux-x86_64.tcl, edit tcl library path

3 TCLDIR=/usr ## TCL installation path
4 TCLINCL=-I$(TCLDIR)/include
5 #TCLLIB=-L$(TCLDIR)/lib -ltcl8.5 -ldl
6 TCLLIB=-L$(TCLDIR)/lib64 -ltcl8.5 -ldl -lpthread
7 TCLFLAGS=-DNAMD_TCL
8 TCL=$(TCLINCL) $(TCLFLAGS)

2.4 Installation

2.4.1 If charm++ built using Intel  MPI and compilers

  • configure

./config <namd-install-dir>/Linux-x86_64-icc.mpi \
–charm-base /opt/app/charm-6.5.0/ –charm-arch   \
mpi-linux-x86_64-ifort-mpicxx  –with-fftw –with-fftw3  \                                  
–with-tcl 2>&1 | tee config-log-mpi.out

  • cd <namd-install-dir>/Linux-x86_64-icc.mpi
  • make 2>&1 | tee make-log.out

2.4.2 If charm++ built using Infiniband (IB) ibverbs and intel compilers

  • configure

./config <namd-install-dir>/Linux-x86_64-icc.ibverbs \
–charm-base/opt/app/charm-6.5.0 –charm-arch         \
net-linux-x86_64-ibverbs-ifort-icc –with-fftw –with-fftw3\
–with-tcl 2>&1 | tee config-log-net.out

  • cd <namd-install-dir>/Linux-x86_64-icc.ibverbs
  • make 2>&1 | tee make-log.out

2.4.3 If installation is successful charmrun and namd2 executable will be created.

3. Execution and Testing

3.1 Download NAMD benchmark from ApoA1 benchmark

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

untar tar -xvf apoa1.tar.gz

3.2 Execute using below command if NAMD is built using charm++ MPI communication layer

  • cd apoa1
  •  <namd-install-dir>/charmrun +p 2  <namd-install-dir>/namd2 ./apoa1.namd
  • It will create three output files namely apoa1-out.coor, apoa1-out.vel, apoa1-out.xsc

3.3 Execute using below command if NAMD is built using charm++ net (ibverbs) communication layer

  • cd apoa1
  •  <namd-install-dir>/charmrun +p 2 ++remote-shell ssh <namd-install-dir>/namd2 ./apoa1.namd
  • It will create three output files namely apoa1-out.coor, apoa1-out.vel, apoa1-out.xsc

4. Known Errors & Solutions

5. References

5.1 http://www.nic.uoregon.edu/tau-wiki/Guide:NAMDTAU

5.2 http://www.ks.uiuc.edu/Research/namd/2.10/features.html

5.3 http://www.hpcadvisorycouncil.com/pdf/NAMD_Best_Practices.pdf

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

This entry was posted in HPC Applications. Bookmark the permalink.

Leave a comment