Physics > Computational Physics
[Submitted on 31 Jan 2020 (v1), last revised 21 Feb 2020 (this version, v3)]
Title:Implementing a neural network interatomic model with performance portability for emerging exascale architectures
View PDFAbstract:The two main thrusts of computational science are more accurate predictions and faster calculations; to this end, the zeitgeist in molecular dynamics (MD) simulations is pursuing machine learned and data driven interatomic models, e.g. neural network potentials, and novel hardware architectures, e.g. GPUs. Current implementations of neural network potentials are orders of magnitude slower than traditional interatomic models and while looming exascale computing offers the ability to run large, accurate simulations with these models, achieving portable performance for MD with new and varied exascale hardware requires rethinking traditional algorithms, using novel data structures, and library solutions. We re-implement a neural network interatomic model in CabanaMD, an MD proxy application, built on libraries developed for performance portability. Our implementation shows significantly improved on-node scaling in this complex kernel as compared to a current LAMMPS implementation, across both strong and weak scaling. Our single-source solution results in improved performance in many cases, with thread-scalability enabling simulations up to 21 million atoms on a single CPU node and 2 million atoms on a single GPU. We also explore parallelism and data layout choices (using flexible data structures called AoSoAs) and their effect on performance, seeing up to ~25% and ~10% improvements in performance on a GPU simply by choosing the right level of parallelism and data layout, respectively.
Submission history
From: Saaketh Desai [view email][v1] Fri, 31 Jan 2020 20:49:30 UTC (1,193 KB)
[v2] Tue, 4 Feb 2020 19:22:38 UTC (1,194 KB)
[v3] Fri, 21 Feb 2020 18:54:46 UTC (1,194 KB)
Current browse context:
physics.comp-ph
Change to browse by:
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
Connected Papers (What is Connected Papers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.