RUMD: A general purpose molecular dynamics package optimized to utilize GPU hardware down to a few thousand particles

RUMD is a general purpose, high-performance molecular dynamics (MD) simulation package running on graphical processing units (GPU's). RUMD addresses the challenge of utilizing the many-core nature of modern GPU hardware when simulating small to medium system sizes (roughly from a few thousand up to hundred thousand particles). It has a performance that is comparable to other GPU-MD codes at large system sizes and substantially better at smaller sizes.RUMD is open-source and consists of a library written in C++ and the CUDA extension to C, an easy-to-use Python interface, and a set of tools for set-up and post-simulation data analysis. The paper describes RUMD's main features, optimizations and performance benchmarks.

[1]  M J Harvey,et al.  ACEMD: Accelerating Biomolecular Dynamics in the Microsecond Time Scale. , 2009, Journal of chemical theory and computation.

[2]  Diwakar Shukla,et al.  OpenMM 4: A Reusable, Extensible, Hardware Independent Library for High Performance Molecular Simulation. , 2013, Journal of chemical theory and computation.

[3]  S. Toxvaerd,et al.  NVU dynamics. II. Comparing to four other dynamics. , 2010, The Journal of chemical physics.

[4]  Berend Smit,et al.  Understanding molecular simulation: from algorithms to applications , 1996 .

[5]  Rastko Sknepnek,et al.  A Graphics Processing Unit Implementation of Coulomb Interaction in Molecular Dynamics. , 2010, Journal of chemical theory and computation.

[6]  M J Harvey,et al.  An Implementation of the Smooth Particle Mesh Ewald Method on GPU Hardware. , 2009, Journal of chemical theory and computation.

[7]  Laxmikant V. Kalé,et al.  Scalable molecular dynamics with NAMD , 2005, J. Comput. Chem..

[8]  Filippo Federici Canova,et al.  Computational Physics on Graphics Processing Units , 2012, PARA.

[9]  J. Banavar,et al.  Computer Simulation of Liquids , 1988 .

[10]  John D. Owens,et al.  GPU Computing , 2008, Proceedings of the IEEE.

[11]  Gianni De Fabritiis,et al.  A survey of computational molecular science using graphics processing units , 2012 .

[12]  Karsten Wedel Jacobsen,et al.  A semi-empirical effective medium theory for metals and alloys , 1996 .

[13]  Michela Taufer,et al.  Structural, dynamic, and electrostatic properties of fully hydrated DMPC bilayers from molecular dynamics simulations accelerated with graphical processing units (GPUs) , 2011, J. Comput. Chem..

[14]  Robert M Farber,et al.  Topical perspective on massive threading and parallelism. , 2011, Journal of molecular graphics & modelling.

[15]  J. S. Hansen,et al.  Simplistic Coulomb forces in molecular dynamics: comparing the Wolf and shifted-force approximations. , 2011, The journal of physical chemistry. B.

[16]  Berk Hess,et al.  A flexible algorithm for calculating pair interactions on SIMD architectures , 2013, Comput. Phys. Commun..

[17]  Klaus Schulten,et al.  Accelerating Molecular Modeling Applications with GPU Computing , 2009 .

[18]  Pak Lui,et al.  Strong scaling of general-purpose molecular dynamics simulations on GPUs , 2014, Comput. Phys. Commun..

[19]  Jonathan D Hirst,et al.  Molecular Dynamics Simulations Using Graphics Processing Units , 2011, Molecular informatics.

[20]  Zheyong Fan,et al.  Accelerated molecular dynamics force evaluation on graphics processing units for thermal conductivity calculations , 2012, Comput. Phys. Commun..

[21]  Joshua A. Anderson,et al.  General purpose molecular dynamics simulations fully implemented on graphics processing units , 2008, J. Comput. Phys..

[22]  Weiguo Liu,et al.  Accelerating molecular dynamics simulations using Graphics Processing Units with CUDA , 2008, Comput. Phys. Commun..

[23]  O. J. Heilmann,et al.  Time-reversible molecular dynamics algorithms with bond constraints. , 2009, The Journal of chemical physics.

[24]  J. Dyre,et al.  NVU dynamics. III. Simulating molecules at constant potential energy. , 2012, The Journal of chemical physics.

[25]  S. Toxvaerd,et al.  Communication: Shifted forces in molecular dynamics. , 2010, The Journal of chemical physics.

[26]  Peng Wang,et al.  Implementing molecular dynamics on hybrid high performance computers - short range forces , 2011, Comput. Phys. Commun..

[27]  D. C. Rapaport,et al.  Enhanced molecular dynamics performance with a programmable graphics processor , 2009, Comput. Phys. Commun..

[28]  Duncan Poole,et al.  Routine Microsecond Molecular Dynamics Simulations with AMBER on GPUs. 1. Generalized Born , 2012, Journal of chemical theory and computation.

[29]  Ron Elber,et al.  MOIL-opt: Energy-Conserving Molecular Dynamics on a GPU/CPU system. , 2011, Journal of chemical theory and computation.

[30]  A. Arnold,et al.  Harvesting graphics power for MD simulations , 2007, 0709.3225.

[31]  Sharon C. Glotzer,et al.  Rigid body constraints realized in massively-parallel molecular dynamics on graphics processing units , 2011, Comput. Phys. Commun..

[32]  Vijay S. Pande,et al.  Efficient nonbonded interactions for molecular dynamics on a graphics processing unit , 2010, J. Comput. Chem..

[33]  Jens H. Krüger,et al.  A Survey of General‐Purpose Computation on Graphics Hardware , 2007, Eurographics.

[34]  I. R. Mcdonald,et al.  Statistical mechanics of dense ionized matter. IV. Density and charge fluctuations in a simple molten salt , 1975 .

[35]  Jinghai Li,et al.  Molecular dynamics simulation of macromolecules using graphics processing unit , 2010, 1001.3764.

[36]  O. J. Heilmann,et al.  NVU dynamics. I. Geodesic motion on the constant-potential-energy hypersurface. , 2010, The Journal of chemical physics.

[37]  S. Phillpot,et al.  Exact method for the simulation of Coulombic systems by spherically truncated, pairwise r−1 summation , 1999 .

[38]  Duncan Poole,et al.  Routine Microsecond Molecular Dynamics Simulations with AMBER on GPUs. 2. Explicit Solvent Particle Mesh Ewald. , 2013, Journal of chemical theory and computation.

[39]  Steve Plimpton,et al.  Fast parallel algorithms for short-range molecular dynamics , 1993 .

[40]  M. Klein,et al.  Constant pressure molecular dynamics algorithms , 1994 .

[41]  Srikanth Sastry,et al.  Growing length and time scales in glass-forming liquids , 2008, Proceedings of the National Academy of Sciences.

[42]  Felix Höfling,et al.  Highly accelerated simulations of glassy dynamics using GPUs: Caveats on limited floating-point precision , 2009, Comput. Phys. Commun..

[43]  Y. Shibuta,et al.  Accelerating Molecular Dynamics Simulation Performed on GPU , 2012 .

[44]  Ross C. Walker,et al.  An overview of the Amber biomolecular simulation package , 2013 .

[45]  Tetsu Narumi,et al.  Accelerating molecular dynamics simulation using graphics processing unit , 2010 .

[46]  Klaus Schulten,et al.  GPU-accelerated molecular modeling coming of age. , 2010, Journal of molecular graphics & modelling.

[47]  Edward Teller,et al.  Interaction of the van der Waals Type Between Three Atoms , 1943 .

[48]  Yuji Sugita,et al.  Graphics Processing Unit Acceleration and Parallelization of GENESIS for Large-Scale Molecular Dynamics Simulations. , 2016, Journal of chemical theory and computation.

[49]  Carsten Kutzner,et al.  Tackling Exascale Software Challenges in Molecular Dynamics Simulations with GROMACS , 2015, EASC.

[50]  William J. Dally,et al.  The GPU Computing Era , 2010, IEEE Micro.

[51]  Jie Cheng,et al.  Programming Massively Parallel Processors. A Hands-on Approach , 2010, Scalable Comput. Pract. Exp..

[52]  Peter H. Poole,et al.  “Swarm relaxation”: Equilibrating a large ensemble of computer simulations⋆ , 2017, The European physical journal. E, Soft matter.

[53]  Vijay S. Pande,et al.  Accelerating molecular dynamic simulation on graphics processing units , 2009, J. Comput. Chem..

[54]  T. Darden,et al.  A smooth particle mesh Ewald method , 1995 .

[55]  Massimo Bernaschi,et al.  Colloquium: Large scale simulations on GPU clusters , 2015 .

[56]  I. Z. Reguly,et al.  A comparison between parallelization approaches in molecular dynamics simulations on GPUs , 2014, J. Comput. Chem..