HPC execution

Prepare the environment

Create and test the DROPPS environment on the same software stack used by the compute nodes. For GPU work, install the CUDA 12 or CUDA 13 wheel extra that matches the site’s NVIDIA driver, then validate OpenMM and a short DROPPS run before submitting production jobs.

Portable staging

Run grompp before or after transfer and preserve the validated inputs alongside the generated TPR. TPR v2 is intended to move a run input between compatible OpenMM 8.x environments, including an older-to-newer transition; forward files are not guaranteed to open in an older OpenMM release.

Example Slurm job

Adapt partitions, environment activation, resources, and wall time to the cluster:

#!/bin/bash
#SBATCH --job-name=dropps
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=4
#SBATCH --gpus=1
#SBATCH --time=24:00:00

set -euo pipefail
source /path/to/environment/bin/activate

dps --version
dps mdrun -s run.tpr -deffnm run \
  --platform CUDA -gpu_id 0 --precision mixed \
  -cpt 10 -maxh 23.5

Explicit --platform CUDA makes a missing CUDA platform a job error. -maxh requests a clean stop before the scheduler limit, leaving a final restart set.

Continue a scheduled run

Submit the same command with -cpi:

dps mdrun -s run.tpr -deffnm run \
  --platform CUDA -gpu_id 0 --precision mixed \
  -cpi -cpt 10 -maxh 23.5

DROPPS reconciles restartable outputs with the checkpoint step so resumed files do not contain duplicate or out-of-order samples. Retain numbered checkpoints with -cpnum when the storage budget permits.

CPU execution

For CPU nodes, select the CPU platform and thread count explicitly:

dps mdrun -s run.tpr -o run --platform CPU -nt 8

Do not combine -nt with GPU device or precision options; OpenMM exposes the Threads property only on the CPU platform.