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
module load Amber/26.3-foss-2025b-CUDA-12.8.0-pmemd
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.
Executable |
Module |
Use |
|---|---|---|
|
AmberTools 26.1; Amber 24.3 or 24.0 with AmberTools |
CPU simulation, using one process or multiple MPI processes. |
|
Amber 26.3, 24.3 or 24.0 |
Optimised CPU simulation, using one process or multiple MPI processes. |
|
Amber 26.3 or 24.0 |
Simulation using one NVIDIA GPU. |
|
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
This script requests an A100. For an H100, replace
--gres=gpu:a100:1 with --gres=gpu:h100:1 and set
--cpus-per-task=12.
#!/bin/bash
#SBATCH --partition=gpu
#SBATCH --qos=gpu
#SBATCH --gres=gpu:a100:1
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=8
#SBATCH --mem=82G
#SBATCH --time=00:05:00
set -e
export SLURM_EXPORT_ENV=ALL
module load Amber/26.3-foss-2025b-CUDA-12.8.0-pmemd
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.