PLUMED

Details on the PLUMED package. How to access and compile the tool.

Useful Links

Licensing

PLUMED is open source software.

Access

As it is open source software, the PLUMED source and binaries are available to all users.

Running

PLUMED is not usually run on its own, rather it is added as a plugin to other MD packages. Please see the following links for information on PLUMED with MD codes on ARCHER

Compiling PLUMED 2.1.2

If you wish to compile your own modified version of PLUMED2, here are the steps we followed to get the code working on ARCHER.

Note: you must compile PLUMED on the /work file system as it is a dynamic executable and files from the installation will be required at run time.

Set up environment

module swap PrgEnv-cray PrgEnv-gnu
export PLUMED_HOME=/work/y07/y07/cse/plumed/2.1.2-gnu-phase2

Modules loaded:

Currently Loaded Modulefiles:
  1) modules/3.2.10.2
  2) eswrap/1.1.0-1.010400.915.0
  3) switch/1.0-1.0501.47124.1.93.ari
  4) craype-network-aries
  5) craype/2.2.1
  6) pbs/12.2.401.141761
  7) craype-ivybridge
  8) cray-mpich/7.1.1
  9) packages-archer
 10) budgets/1.1
 11) checkScript/1.1
 12) checkQueue/1.0
 13) checkDisk/1.0
 14) bolt/0.6
 15) serialJobs/1.0
 16) python/2.7.6
 17) tkdiff/4.2
 18) nano/2.2.6
 19) imagemagick/6.8.8-2
 20) leave_time/1.0.0
 21) quickstart/1.0
 22) epcc-tools/1.4
 23) gcc/4.9.2
 24) cray-libsci/13.0.1
 25) udreg/2.3.2-1.0501.7914.1.13.ari
 26) ugni/5.0-1.0501.8253.10.22.ari
 27) pmi/5.0.6-1.0000.10439.140.2.ari
 28) dmapp/7.0.1-1.0501.8315.8.4.ari
 29) gni-headers/3.0-1.0501.8317.12.1.ari
 30) xpmem/0.1-2.0501.48424.3.3.ari
 31) job/1.5.5-0.1_2.0501.48066.2.43.ari
 32) csa/3.0.0-1_2.0501.47112.1.91.ari
 33) dvs/2.4_0.9.0-1.0501.1672.2.122.ari
 34) alps/5.1.1-2.0501.8507.1.1.ari
 35) rca/1.0.0-2.0501.48090.7.46.ari
 36) atp/1.7.5
 37) PrgEnv-gnu/5.1.29
 

Build the serial version

Define the required environment variables:

export CC="cc -dynamic"
export CXX="CC -dynamic"
export FC="ftn -dynamic"
export CFLAGS="-dynamic"
export FFLAGS="-dynamic"
export LIBS=""
export DYNAMIC_LIBS="-lstdc++"
export LDFLAGS="-ldl"
export CPPFLAGS="-D__PLUMED_HAS_DLOPEN"
export LDSO="cc $CFLAGS"
export LD="CC -dynamic"
export LDF90="ftn -dynamic"

Configure the build (we have not yet been successful in compiling a version that works with the almost library:

./configure --prefix=$PLUMED_HOME --disable-mpi --disable-almost --enable-matheval

Then build:

source sourceme.sh
make -j4 clean
make -j4
make -j4 install

Build the MPI version

Define the required environment variables:

export CC="cc -dynamic"
export CXX="CC -dynamic"
export FC="ftn -dynamic"
export CFLAGS="-dynamic"
export FFLAGS="-dynamic"
export LIBS=""
export DYNAMIC_LIBS="-lstdc++"
export LDFLAGS="-ldl"
export CPPFLAGS="-D__PLUMED_HAS_DLOPEN"
export LDSO="cc $CFLAGS"
export LD="CC -dynamic"
export LDF90="ftn -dynamic"
export PLUMED_LIBSUFFIX="mpi"

Configure the build:

./configure --prefix=$PLUMED_HOME --enable-mpi --disable-almost --enable-matheval

Then build:

source sourceme.sh
make -j4 clean
make -j4
make -j4 install