Table of Contents


Back

NAMD

Most of your question can be answered on the web site NAMD or subscribe to their community supported list namd-l.

The rest of this page are simple instruction to get you going.

Jobs

The NAMD binary was compiled against the Topspin libraries, hence can only run on the imw queue (Infiniband switch). You need to be a member of the “inf_nodes” unix group to successfully run the bianry.

Here is a sample job.

#!/bin/bash

#BSUB -q imw
#BSUB -R "span[ptile=1]"
#BSUB -J namd
#BSUB -o out
#BSUB -e err

#BSUB -n 4

MPIRUN="/share/apps/bin/lsf.topspin.wrapper"

PATH=/usr/local/topspin/mpi/mpich/bin:$PATH
export PATH

# scratch dirs
MYSANSCRATCH=/sanscratch/$LSB_JOBID
MYLOCALSCRATCH=/localscratch/$LSB_JOBID
#cd $MYSANSCRATCH

rm -rf err out 

export LD_LIBRARY_PATH=/usr/local/topspin/mpi/mpich/lib64
$MPIRUN /share/apps/NAMD/NAMD_2.6_Source/Linux-amd64-MPI/namd2 /home/hmeij/1g6r/named-pgm/alanin

You may browse that directory to view the type of output it generates.

OpenMPI

Axel's commentary on how to get NAMD to run with OpenMPI.

the way i'm compiling openmpi is the following (with support for infiniband, myrinet, and job launch directly through OpenPBS without host/nodefiles):

./configure --prefix=/cmm/pkg/openmpi-1.2.7 \ 
            --enable-orterun-prefix-by-default \
            --with-gm=/opt/gm-2.1.29 \
            --with-openib=/opt/ofed-1.3.1 \
            --with-tm=/opt

make -j8
make install

now i can select what communication to use by default through /cmm/pkg/openmpi/etc/openmpi-mca-params.conf , which has either btl = openib,self or btl = gm,self

if i run on the frontend, i override that with -mca btl tcp,self

the very same charm++ megatest binary works fine on all four clusters and the front end without any other modifications.

one of the nicest things about a (normal) openmpi installation is that the resulting executables only depend on the openmpi libraries and _not_ on any other lowlevel communication libs, so one can actually use the same binary on a different installation of openmpi with different lowlevel protocols, provided it is of the same openmpi version and uses the same gcc/libc and so on.


Back