A Domain Specific Language for Performance Portable Molecular Dynamics Algorithms
William R. Saunders, James Grant, Eike H. M\"uller

TL;DR
This paper introduces a domain-specific language and code generation framework to develop performance portable molecular dynamics algorithms, simplifying adaptation to diverse hardware and enabling efficient simulation and analysis.
Contribution
It presents a novel Python-based code generation system for MD simulations that ensures performance portability across various architectures, inspired by PDE abstraction approaches.
Findings
Demonstrates efficient, scalable MD code on multiple hardware platforms.
Shows ease of expressing analysis algorithms within the framework.
Achieves performance comparable to state-of-the-art packages.
Abstract
Developers of Molecular Dynamics (MD) codes face significant challenges when adapting existing simulation packages to new hardware. In a continuously diversifying hardware landscape it becomes increasingly difficult for scientists to be experts both in their own domain (physics/chemistry/biology) and specialists in the low level parallelisation and optimisation of their codes. To address this challenge, we describe a "Separation of Concerns" approach for the development of parallel and optimised MD codes: the science specialist writes code at a high abstraction level in a domain specific language (DSL), which is then translated into efficient computer code by a scientific programmer. In a related context, an abstraction for the solution of partial differential equations with grid based methods has recently been implemented in the (Py)OP2 library. Inspired by this approach, we develop a…
Click any figure to enlarge with its caption.
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
A Domain Specific Language for Performance Portable Molecular Dynamics Algorithms
William Robert Saunders
James Grant
Eike Hermann Müller
affiliationtext: University of Bath, Bath BA2 7AY, Bath, United Kingdomaaaffiliationtext: Department of Mathematical Sciencesbbaffiliationtext: Department of Chemistry**affiliationtext: Email: [email protected]
