MD-Bench
Table of Contents
Introduction#
MD-Bench is a toolbox for the performance engineering of short-range force calculation kernels in molecular dynamics applications. It covers state-of-the-art algorithms from community codes such as LAMMPS and GROMACS.
Dwarf Classification#
MD-Bench implements the N-Body Methods dwarf from the Berkeley taxonomy. The core computational pattern is the evaluation of pairwise short-range interactions between particles, typically using neighbor lists to limit the O(N^2) all-pairs cost to O(N) for short-range potentials with a cutoff radius. Performance depends on the neighbor list data structure, SIMD vectorization of the force kernel, and memory access patterns for particle data.
Key Features#
- Algorithms: Verlet list and cluster-pair (GROMACS-style) neighbor list schemes
- Force fields: Lennard-Jones (LJ) and Embedded Atom Method (EAM) potentials
- Data layouts: Array-of-Structures (AOS) and Structure-of-Arrays (SOA)
- Parallelism: OpenMP for shared memory, MPI for distributed memory, CUDA for NVIDIA GPUs
- SIMD: Intrinsic kernels for cluster-pair on x86 (AVX2, AVX-512)
- Precision: Single and double precision floating point
- Input formats: PDB, GROMACS .gro, LAMMPS dump files
- Testcases: Solid copper (LJ, EAM), melted copper, argon gas
Getting Started#
Clone the MD-Bench repository and follow the build and usage instructions in the README.
Performance Characteristics#
The short-range force kernel in MD-Bench is compute-bound for the cluster-pair algorithm with SIMD vectorization, and transitions toward memory-bandwidth bound for the Verlet list variant, depending on the data layout and potential complexity. The choice between AOS and SOA layout trades off cache utilization (AOS favors spatial locality of a single particle’s data) against SIMD vectorization efficiency (SOA enables contiguous loads). The cluster-pair algorithm groups atoms into clusters to improve SIMD occupancy and reduce neighbor list overhead. Key tuning dimensions include the algorithm variant, data layout, SIMD width, and neighbor list rebuild frequency.
Citations#
Rafael Ravedutti Lucio Machado, Jan Eitzinger, Jan Laukemann, Georg Hager, Harald Kostler and Gerhard Wellein: MD-Bench: A performance-focused prototyping harness for state-of-the-art short-range molecular dynamics algorithms. Future Generation Computer Systems (FGCS), Volume 149, 2023, Pages 25-38, ISSN 0167-739X, DOI: 10.1016/j.future.2023.06.023
Rafael Ravedutti Lucio Machado, Jan Eitzinger, Harald Kostler, and Gerhard Wellein: MD-Bench: A generic proxy-app toolbox for state-of-the-art molecular dynamics algorithms. PPAM 2022, the 14th International Conference on Parallel Processing and Applied Mathematics, Gdansk, Poland. PPAM 2022 Best Paper Award. Preprint: arXiv:2207.13094, DOI: 10.1007/978-3-031-30442-2_24
Credits & License#
MD-Bench is developed by the Erlangen National High Performance Computing Center (NHR@FAU) at the University of Erlangen-Nuremberg.
Licensed under LGPL-3.0.