LAMMPS

Introduction

Large-scale Atomic/Molecular Massively Parallel Simulator (LAMMPS) is an open-source molecular dynamics software package developed at Sandia National Laboratories. It is widely used for classical molecular dynamics simulations in materials science, chemistry, soft matter, and biological systems.

LAMMPS is designed for scalable high-performance computing and supports parallel execution using MPI, threading, and accelerator technologies such as KOKKOS and GPUs.

Versions

ARC provides LAMMPS builds optimized for different compiler toolchains and hardware architectures. All current ARC builds include KOKKOS support, with selected versions also enabled for GPU acceleration and machine-learning potentials.

The following LAMMPS modules are currently available on ARC clusters:

CPU-only (KOKKOS-enabled) builds:

LAMMPS/22Jul2025-foss-2024a-kokkos
LAMMPS/29Aug2024_update2-foss-2024a-kokkos
LAMMPS/29Aug2024-foss-2023b-kokkos

GPU-enabled builds:

LAMMPS/22Jul2025-foss-2024a-kokkos-CUDA-12.6.0
LAMMPS/29Aug2024-foss-2023b-kokkos-CUDA-12.6.0
LAMMPS/29Aug2024_update2-foss-2024a-kokkos-CUDA-12.6.0

Specialized builds:

LAMMPS/28Oct2024-foss-2023a-kokkos-mace-CUDA-12.1.1

The kokkos-macebuild includes support for MACE machine-learning interatomic potentials and is intended for GPU-accelerated workflows involving ML-based force fields.

You can view detailed build options and enabled packages for any module with:

module show LAMMPS/<version>

Availability

LAMMPS is free and open-source software and does not require a license. It is available to all ARC users on supported clusters. No special group membership is required to use LAMMPS.

For official documentation, tutorials, and source code, see: https://www.lammps.org/

Interface

LAMMPS is primarily used via the command line. The main executable is typically named lmp, and is launched with an input script provided via the -in option.

Example usage on an ARC cluster:

[mypid@tinkercliffs1 ~]$ module load LAMMPS/22Jul2025-foss-2024a-kokkos
[mypid@tinkercliffs1 ~]$ lmp -help

LAMMPS simulations are usually run in batch mode using the Slurm scheduler. A simple MPI-based run might look like:

mpirun -np $SLURM_NTASKS lmp -in input.in > output.txt

When using mpirun, users are responsible for ensuring that the number of MPI ranks matches the resources requested from Slurm. For GPU-enabled or KOKKOS-accelerated builds, additional runtime flags may be required to select the appropriate execution backend (e.g., CUDA). Users should consult the LAMMPS documentation for package-specific and accelerator-specific options.

Examples and Tutorials

ARC maintains a collection of example LAMMPS input scripts and job submission templates in a public GitHub repository. These examples demonstrate common workflows, including MPI-based runs, KOKKOS acceleration, and GPU-enabled simulations on ARC clusters.

Users are encouraged to review and adapt these examples when developing their own LAMMPS simulations.

The ARC LAMMPS examples repository is available at: https://github.com/AdvancedResearchComputing/examples/tree/master/lammps