Using Amber on WestGrid Systems

 

Introduction

Amber is a suite of programs for molecular calculations, including molecular dynamics. Some of the major Amber programs are (from http://ambermd.org):

sander: Simulated annealing with NMR-derived energy restraints. This allows for NMR refinement based on NOE-derived distance restraints, torsion angle restraints, and penalty functions based on chemical shifts and NOESY volumes. Sander is also the "main" program used for molecular dynamics simulations, and is also used for replica-exchange, thermodynamic integration, and potential of mean force (PMF) calculations. Sander also includes QM/MM capability.

pmemd: This is an extensively-modified version (originally by Bob Duke) of the sander program, optimized for periodic, PME simulations, and for GB simulations. It is faster than sander and scales better on parallel machines. Additionally with version 11 it includes NVIDIA GPU acceleration (not available on WestGrid at this time); hence it is generally the program of choice, unless you need options that it does not support. In the code model being used, sander is the vehicle to explore new features, and pmemd is a "production" code that implements sander's most-used features in a well-tested fashion that performs well in high-performance environments.

nmode: Normal mode analysis program using first and second derivative information, used to find local minima, perform vibrational analysis, and search for transition states.

LEaP: xleap is an X-windows-based program that provides for basic model building and Amber coordinate and parameter/topology input file creation. It includes a molecular editor which allows for building residues and manipulating molecules. tleap is a terminal-based version.

antechamber: This program suite automates the process of developing force field descriptors for most organic molecules. It starts with structures (usually in PDB format), and generates files that can be read into LEaP for use in molecular modeling. The force field description that is generated is designed to be compatible with the usual Amber force fields for proteins and nucleic acids.

ptraj: This is used to analyze MD trajectories, computing a variety of things, like RMS deviation from a reference structure, hydrogen bonding analysis, time-correlation functions, diffusional behavior, and so on.

mm_pbsa: This is a script to automate post-processing of MD trajectories, to analyze energetics using continuum solvent ideas. It can be used to break energies into "pieces" arising from different residues, and to estimate free energy differences between conformational basins.

WestGrid has purchased a license for Amber 10 and Amber 11, which allows access to the Amber executables only to users who have agreed to the license conditions.

A few points about using Amber on WestGrid systems are given below. Please write to support@westgrid.ca if you have questions about running this software that are not answered here.

Like other jobs on WestGrid systems, Amber jobs are run by submitting an appropriate script for batch scheduling using the qsub command. See documentation on running batch jobs for more information.

License

Please review the relevant sections of the license terms at http://ambermd.org/amber10.license.html and http://ambermd.org/amber11.license.html. Then, if you agree, send an email to support@westgrid.ca with the subject line "Amber access requested for your_user_name" and indicate that you have read and can abide by the conditions of use.  Your username will then be added to the wg-amber UNIX group that is used to control access to the software on some WestGrid systems.  As indicated below, access on Bugaboo is handled differently.

(Note, WestGrid has purchased a site license, so, the part of the license pages referring to fees and software orders is not relevant to using the software on WestGrid.)

Running Amber on Bugaboo

Amber 10 and 11 have been installed on Bugaboo.  To use Amber 10, please run the following command at least once interactively:

module load amber/10

You will be asked to accept the Amber license. After that you can use the "module load amber/10" command to access the software in job submission scripts.

Similarly, to use Amber 11, please run the following command at least once interactively:

module load amber/11

You will be asked to accept the Amber license. After that you can use the "module load amber/11" command to access the software in job submission scripts.

Running Amber on Checkers

Amber 10 has been installed on Checkers under /global/software/amber10.

Amber 11 has been installed in /global/scratch/software/amber11. It was built using Intel 11.1 compilers, MKL 10.2, and Intel MPI 3.2.1.

As of this writing (2011-02-15) there is no module available to set up the Amber environment, but, you can do that by

   1. Setting the environment variable AMBERHOME  /global/scratch/software/amber11
   2. Prepending $AMBERHOME/bin to PATH

For example, in a bash shell environment:

export AMBERHOME=/global/scratch/software/amber11
export PATH=$AMBERHOME/bin:$PATH

Running Amber on Lattice

Amber 11 (serial and OpenMPI parallel) has been installed on Lattice under /global/software/amber/amber11.

There are complete manuals available on Lattice as PDFs in /global/software/amber/amber11/doc.

Manual

Filename
Amber 11 User's Manual Amber11.pdf
AmberTools User's Manual - version 1.4 AmberTools.pdf
LEaP Programmer’s Guide leap_pg.pdf
AMBER Trajectory NetCDF Convention nctraj.pdf

 

To set up your environment the AMBERHOME variable needs to be set and some Amber programs require the PATH to be modified. For example, in bash, use:

export AMBERHOME=/global/software/amber/amber11
PATH=$PATH:$AMBERHOME/exe

As an example, copy the DHFR JAC (dihydrofolate reductase Joint Amber/Charmm) benchmark to your directory:

cp -rp $AMBERHOME/examples/JAC .
cd JAC

This benchmark requires about 130 seconds on the Lattice login node or 160 seconds on a compute node.

$AMBERHOME/exe/pmemd -O -i mdin -o mdout -p prmtop -c inpcrd

Only very short serial tests (a few minutes) should be run on the login node. Production calculations and parallel runs should be executed using the TORQUE/Moab batch system. The file, pmemd.mpi in the JAC example folder, can be used to run the JAC benchmark on 1 node with 8 processors.

#!/bin/bash
#PBS -S /bin/bash

# Script for running Amber 11 pmemd (OpenMPI) on Lattice
# 2011-01-18 KEW

cd $PBS_O_WORKDIR
echo "Current working directory is `pwd`"

NUM_PROCS=`/bin/awk 'END {print NR}' $PBS_NODEFILE`
echo "Running on $NUM_PROCS processors."

INPUT=mdin
OUTPUT=mdout
PARM=prmtop
INPCRD=inpcrd

AMBERHOME=/global/software/amber/amber11
PATH=$PATH:$AMBERHOME/exe

echo "PBS node file location: $PBS_NODEFILE"
echo "------------------"
cat $PBS_NODEFILE
echo "------------------"

echo "Starting run at: `date`"
mpiexec -n $NUM_PROCS $AMBERHOME/exe/pmemd.MPI -O -i $INPUT -o $OUTPUT -p $PARM -c $INPCRD
echo "Finished run at: `date`"
exit

To run, use the qsub command:

qsub -l nodes=1:ppn=8 -l walltime=0:10:0 run-jac.pbs

Note, the parallel (OpenMPI) version of the executable (pmemd.MPI) must be used in the mpiexec command. The 8 processor calculation requires about 25 seconds to run on Lattice. The output in mdout can be compared with the Amber results in the mdout.save file.

It is critical that the number of processors requested for the job (nodes X ppn) matches the number of processes specified in the mpiexec command. Choosing an appropriate walltime will ensure the job is scheduled as soon as appropriate resources are available. Tests of parallel Amber jobs for a short simulation time should be run to determine an appropriate number of nodes to use and estimate the walltime required. In general whole nodes (ppn=8) are appropriate for most Amber calculations. More guidance on parallel usage is provided in the Amber 11 and AmberTools 1.4 User's Manuals. There are specific restrictions, such as "-n must be a multiple of 4", or "maximum -n is 12" for some packages.

 


Updated 2011-03-15.