Overview

Amber is a package of molecular dynamics simulation programs. Please see the official Amber web page for the full documentation and reference manuals.

Running Amber

Setting up the environment

To access the various Amber programs, please load the module of the desired version. For instance for Amber 12 use:

$ module add amber/12

This will add the appropriate executables to your environment, as well as setting the environmental variable $AMBERHOME.NOTE : Amber is currently installed under the Leeds module, so at the moment to load the Amber use:

$ module add leeds $ module add amber

Once the module is made centrally available, you will no longer need to load the Leeds module.

Executable naming conventions

Some of the main executables available are:

sander Serial version of SANDER
sander.MPI sander MPI parallel executable, built to run over Infiniband
pmemd Serial version of PMEMD
pmemd.MPI pmemd MPI parallel executable, built to run over Infiniband

The other executables follow the same naming convention, with parallel versions ending with .MPI.

Example submission scripts

When running Amber in parallel, to get faster and more consistent job times it is strongly advised that you make use of the node syntax for specifying number of required cores as opposed to the standard Grid Engine submission syntax. For instance if benchmarking short runs of your code indicates that 16 cores is the optimum number of cores, then an example run script, para_run.sh would take the form:

#!/bin/bash#run from current working directory and export current environment#$ -V -cwd#request 24 hours of run time#$ -l h_rt=24:00:00# request 16 cores with new node syntax#$ -l np=16#the module command can be included in the submission scriptmodule add amber/12l=md19f=md20mpirun pmemd.MPI  -O -i $f.in -o $f.out -inf $f.inf \        -c gc90turn10wat.$l -ref gc90turn10wat.$l -r gc90turn10wat.$f \        -p gc90turn10wat.top -x gc90turn10wat$f.x -e gc90turn10wat$f.ene

For more options look at other available qsub options. The script can then be submitted to the queues with:

$ qsub para_run.sh

 

Chaining jobs

On occasion users may want to run simulations that require longer than the maximum allowed queue time of 48 hours. In order to run simulations for longer than the maximum queue time, it is possible to submit jobs to the queues that depend on the completion of previous jobs. These sets of consecutive interdependent jobs can be referred to as job chains.One simple way to creating a job chain is to make use of task arrays and limit the number of running tasks to a single task. Practically:

#!/bin/bash#run from current working directory and export current environment#$ -V -cwd#request 48 hours of run time #$ -l h_rt=48:00:00# request 16 cores with new node syntax#$ -l np=16# request 5 tasks, for a chain of 5 jobs#$ -t 1-5:1# limit the number of concurrently running tasks to 1.#$ -tc 1 i. Any notable details in using it e.g. command to launch it as a parallel program, special batch queue details<AMBER COMMANDS>

 

Licensing information and access to software

The Amber website has the full text of the license. On the current facility access is restricted to Institutes with the appropriate site licenses and to users who have agreed to the Amber license. To get access please contact your institutional HPC helpdesk.