Build instructions for namd. In benchmarks the memopt version is used with SMP support. In order to build this version, your MPI need to have level of thread support: MPI_THREAD_FUNNELED You need a NAMD CVS 2.9 version 2013-02-06 or later. 1. Uncompress/tar the source. 2. cd NAMD_Source_BASE (the directory name depends on how the source obtained, typically : namd2 or NAMD_CVS_2013-02-06_Source ) 3. untar the charm-VERSION.tar that exists. If you obtained the namd source via cvs, you need to download separately charm. 4. cd to charm-VERSION directory 5. configure and compile charm : This step is system dependent. Some examples are : CRAY XE6 : ./build charm++ mpi-crayxe smp --with-production -O -DCMK_OPTIMIZE CURIE : ./build charm++ mpi-linux-x86_64 smp mpicxx ifort --with-production -O -DCMK_OPTIMIZE JUQUEEN : ./build charm++ mpi-bluegeneq smp xlc --with-production -O -DCMK_OPTIMIZE The syntax is : ./build charm++ ARCHITECTURE smp (compilers, optional) --with-production -O -DCMK_OPTIMIZE You can find a list of supported architectures/compilers in charm-VERSION/src/arch The smp option is mandatory to build the Hybrid version of namd. This builds charm++. 6. cd .. 7. Configure NAMD. This step is system dependent. Some examples are : CRAY-XE6 ./config CRAY-XT-g++ --charm-base ./charm-6.5.0 --charm-arch mpi-crayxe-smp --with-fftw3 --fftw-prefix $CRAY_FFTW_DIR --without-tcl --with-memopt --charm-opts -verbose CURIE ./config Linux-x86_64-icc --charm-base ./charm-6.5.0 --charm-arch mpi-linux-x86_64-ifort-smp-mpicxx --with-fftw3 --fftw-prefix PATH_TO_FFTW3_INSTALLATION --without-tcl --with-memopt --charm-opts -verbose --cxx-opts "-O3 -xAVX " --cc-opts "-O3 -xAVX" --cxx icpc --cc icc --cxx-noalias-opts "-fno-alias -ip -fno-rtti -no-vec " Juqueen: ./config BlueGeneQ-MPI-xlC --charm-base ./charm-6.5.0 --charm-arch mpi-bluegeneq-smp-xlc --with-fftw3 --with-fftw-prefix PATH_TO_FFTW3_INSTALLATION --without-tcl --charm-opts -verbose --with-memopt You need to specify the fftw3 installation directory. On systems that use environment modules you need to load the existing fftw3 module and probably use the provided environment variables - like in CRAY-XE6 example above. If fftw3 libraries are not installed on your system, download and install fftw-3.3.3.tar.gz from http://www.fftw.org/. You may adjust the compilers and compiler flags as the CURIE example. When config ends prompts to change to a directory and run make. 8. cd to the reported directory and run make If everything is ok you'll find the executable with name namd2 in this directory.