HAL’s MD package is a high-precision molecular dynamics package for large-scale simulations of the complex dynamics in inhomogeneous liquids. It has been specifically designed to support acceleration through CUDA-enabled graphics processors.

HAL’s MD package is maintained and developed by Felix Höfling and was initially written together with Peter Colberg. Special credit goes to Nicolas Höft and Daniel Kirchner for their manifold contributions.


A description of the implementation, performance tests, numerical stability tests, and an application to slow glassy dynamics can be found in the article by P. H. Colberg and F. Höfling, Highly accelerated simulations of glassy dynamics using GPUs: Caveats on limited floating-point precision, Comput. Phys. Commun. 182, 1120 (2011) [arXiv:0912.3824].

Physics applications

HAL’s MD package is designed to study

  • the spatio-temporal dynamics of inhomogeneous and complex liquids
  • both two- and three-dimensional systems
  • particles interacting via many truncated and untruncated pair potentials (bonded and external potentials coming soon)
  • microcanonical (NVE) and canonical (NVT) ensembles (Integrators)
  • glass transition, liquid–vapour interfaces, demixing of binary fluids, confined fluids, porous media, …


HAL’s MD package features

  • GPU-acceleration: 1 NVIDIA Kepler K20Xm GPU comparable to 100 CPU cores (Benchmarks)
  • high performance and excellent numerical long-time stability (e.g., energy conservation)
  • user scripts, which define complex simulation protocols
  • online evaluation of observables including dynamic correlation functions
  • structured, compressed, and portable H5MD output files
  • extensibility by the generic and modular design
  • free software under LGPL-3+ license

Technical features

HAL’s MD package brings

  • an extensive automatic test suite using CMake
  • double-single floating-point precision for numerically critical hot spots
  • C²-smooth potential cutoffs for improved energy conservation
  • an integrated, lightweight Lua interpreter
  • template-based C++ code taking advantage of C++11

Historical footnote

The name HAL’s MD package was chosen in honour of the machine HAL at the Arnold Sommerfeld Center for Theoretical Physics of the Ludwigs-Maximilians-Universität München. HAL has been the project’s first GPGPU machine in 2007, equipped initially with two NVIDIA GeForce 8800 Ultra. HAL survived a critical air condition failure in the server room.