Amber and AmberTools

Guidance last updated: 6 November 2026

Amber (originally Assisted Model Building with Energy Refinement) is software for performing molecular dynamics and structure prediction.

Usage

After connecting to Stanage (see Establishing a SSH connection), start an interactive session:

salloc

You can load a specific version with one of the following commands:

module load Amber/26.3-foss-2025b-CUDA-12.8.0-pmemd
module load Amber/24.3-foss-2023a-AmberTools-24.10
module load Amber/24.0-foss-2023b-AmberTools-24.0-CUDA-12.4.0

AmberTools includes tools for preparing systems and analysing trajectories, such as tleap and cpptraj, and the sander simulation engine. Amber also provides PMEMD, an optimised simulation engine. PMEMD supports a subset of the features in sander; check the Amber reference manual for your calculation.

Choosing an executable

Executable

Module

Use

sander / sander.MPI

AmberTools 26.1; Amber 24.3 or 24.0 with AmberTools

CPU simulation, using one process or multiple MPI processes.

pmemd / pmemd.MPI

Amber 26.3, 24.3 or 24.0

Optimised CPU simulation, using one process or multiple MPI processes.

pmemd.cuda

Amber 26.3 or 24.0

Simulation using one NVIDIA GPU.

pmemd.cuda.MPI

Amber 26.3 or 24.0

Parallel GPU engine for supported multi-GPU and replica-exchange calculations.

Amber 26.3 CPU pmemd runs on Icelake and H100 NVL nodes.

AmberTools: preparation and analysis

AmberTools consists of several independently developed packages that work well by themselves, and with Amber itself. The suite can also be used to carry out complete molecular dynamics simulations, with either explicit water or generalized Born solvent models.

Use AmberTools in a CPU job or an allocated command-line interactive session to prepare systems and analyse simulation results:

module load AmberTools/26.1-foss-2025b

Use tleap to prepare topology and coordinate files, antechamber for small-molecule preparation, and cpptraj to analyse trajectories.

Preparation, simulation and analysis can run in separate jobs on different node types. Load the appropriate module in each job: AmberTools for preparation and analysis, and a CUDA-enabled Amber module for GPU simulation. Use the prepared topology and coordinates as simulation inputs, then use the matching topology with the resulting trajectory for analysis. These files can be shared between the jobs without loading both modules together.

Example inputs

Both examples below use the same files from the Amber GPU tutorial. Each runs 1,000 steps (2 ps) to demonstrate running Amber and writing a restart file; this is not a production simulation protocol.

Download the topology and prepared coordinates with velocities from the tutorial (about 5.4 MB combined):

mkdir amber-example
cd amber-example
curl -fL -o RAMP1.prmtop https://ambermd.org/tutorials/basic/tutorial14/include/RAMP1.prmtop
curl -fL -o RAMP1_equil.rst7 https://ambermd.org/tutorials/basic/tutorial14/include/RAMP1_equil.rst7

Save md.in in the same directory:

Short RAMP1 protein restart example (1000 steps, 2 ps)
 &cntrl
   imin=0, irest=1, ntx=5,
   nstlim=1000, dt=0.002,
   ntc=2, ntf=2, cut=9.0,
   ntb=2, ntp=1,
   ntt=3, gamma_ln=1.0, temp0=300.0,
   ig=-1,
   ntpr=500, ntwx=500, ntwr=500,
   ioutfm=1, ntxo=2,
 /

irest=1 and ntx=5 read the saved coordinates and velocities. ntwr=500 writes a restart every 500 steps (1 ps here). These short run and output intervals are for the example; choose appropriate values for a longer simulation.

Single-GPU example

Choose the tab for your GPU type. Save the example batch submission script as my_job.sh beside the input files and submit it with sbatch my_job.sh. Each example requests one GPU for five minutes and follows the recommended minimum host memory and CPU allocations in the GPU job guidance. Adjust the resources for your own system and simulation length.

#!/bin/bash
#SBATCH --partition=gpu
#SBATCH --qos=gpu
#SBATCH --gres=gpu:h100nvl:1
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=12
#SBATCH --mem=96G
#SBATCH --time=00:05:00

set -e
export SLURM_EXPORT_ENV=ALL
module load Amber/24.0-foss-2023b-AmberTools-24.0-CUDA-12.4.0

srun pmemd.cuda -O -i md.in -p RAMP1.prmtop -c RAMP1_equil.rst7 \
    -o initial.mdout -r initial.ncrst -x initial.nc -inf initial.mdinfo

Expected output

After a successful run, initial.mdout contains the final step and timing summary. The starting file contains 23,521 atoms at 500 ps, so the final step should report NSTEP = 1000 and TIME(PS) = 502.000. Energies and temperatures can differ between builds and GPUs.

initial.ncrst contains the restart state, initial.nc contains the trajectory, and initial.mdinfo contains progress information. The -O option allows existing output files to be overwritten.

Checkpointing and restarting

Split long simulations into segments that finish within the requested walltime. ntwr controls how often Amber saves a restart, in simulation steps. Slurm does not save Amber’s state when it stops a job at its time limit; use the last complete restart file.

To continue the example after the first job finishes, copy your batch script to restart.sh and replace its srun command with:

srun pmemd.cuda -O -i md.in -p RAMP1.prmtop -c initial.ncrst \
    -o continued.mdout -r continued.ncrst -x continued.nc -inf continued.mdinfo

Submit it with sbatch restart.sh. The existing irest=1 and ntx=5 settings continue from the saved coordinates and velocities. This adds another 1,000 steps, reaching 504 ps. Different output names preserve the previous restart and trajectory. For your own calculation, keep the same topology and compatible simulation settings, and choose nstlim for the next segment.

MPI example

Save this example batch submission script beside the example inputs as my_job.sh, then submit it with sbatch my_job.sh.

#!/bin/bash
#SBATCH --ntasks=4
#SBATCH --cpus-per-task=1
#SBATCH --mem-per-cpu=2000
#SBATCH --time=00:05:00

set -e
export SLURM_EXPORT_ENV=ALL
module load Amber/24.3-foss-2023a-AmberTools-24.10
export OMP_NUM_THREADS=1

srun pmemd.MPI -O -i md.in -p RAMP1.prmtop -c RAMP1_equil.rst7 \
    -o cpu.mdout -r cpu.ncrst -x cpu.nc -inf cpu.mdinfo

Further information

Installation notes

Amber

Amber was installed using Easybuild, build details can be found in $EBROOTAMBER/easybuild with a given module loaded.

Direct dependencies for latest version of Amber

AmberTools

AmberTools was installed using Easybuild, build details can be found in $EBROOTAMBERTOOLS/easybuild with a given module loaded.

Direct dependencies for latest version of AmberTools