A GPU-based large-scale Monte Carlo simulation method for systems with long-range interactions

Abstract In this work we present an efficient implementation of Canonical Monte Carlo simulation for Coulomb many body systems on graphics processing units (GPU). Our method takes advantage of the GPU Single Instruction, Multiple Data (SIMD) architectures, and adopts the sequential updating scheme of Metropolis algorithm. It makes no approximation in the computation of energy, and reaches a remarkable 440-fold speedup, compared with the serial implementation on CPU. We further use this method to simulate primitive model electrolytes, and measure very precisely all ion–ion pair correlation functions at high concentrations. From these data, we extract the renormalized Debye length, renormalized valences of constituent ions, and renormalized dielectric constants. These results demonstrate unequivocally physics beyond the classical Poisson–Boltzmann theory.

[1]  Michael Engel,et al.  Massively parallel Monte Carlo for many-particle simulations on GPUs , 2012, J. Comput. Phys..

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

[3]  Guy Cohen,et al.  Simulating lattice spin models on GPUs , 2014 .

[4]  William H. Press,et al.  Numerical recipes , 1990 .

[5]  Tsuyoshi Hamada,et al.  The Chamomile Scheme: An Optimized Algorithm for N-body simulations on Programmable Graphics Processing Units , 2007 .

[6]  Yaohang Li,et al.  A load-balancing workload distribution scheme for three-body interaction computation on Graphics Processing Units (GPU) , 2016, J. Parallel Distributed Comput..

[7]  Steven J. Plimpton,et al.  Porting LAMMPS to GPUs. , 2010 .

[8]  D. J. Mitchell,et al.  Dressed‐ion theory for electrolyte solutions: A Debye–Hückel‐like reformulation of the exact theory for the primitive model , 1994 .

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

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

[11]  Leslie Greengard,et al.  A fast algorithm for particle simulations , 1987 .

[12]  Yunfei Chen,et al.  GPU accelerated molecular dynamics simulation of thermal conductivities , 2007, J. Comput. Phys..

[13]  Yaohang Li,et al.  Accelerating knowledge-based energy evaluation in protein structure modeling with Graphics Processing Units , 2012, J. Parallel Distributed Comput..

[14]  Donald J. Jacobs,et al.  An image-based reaction field method for electrostatic interactions in molecular dynamics simulations of aqueous solutions. , 2009, The Journal of chemical physics.

[15]  Jeroen Bédorf,et al.  Gravitational tree-code on graphics processing units: implementation in CUDA , 2010, ICCS.

[16]  D. J. Mitchell,et al.  An exact but linear and Poisson—Boltzmann-like theory for electrolytes and colloid dispersions in the primitive model , 1992 .

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

[18]  Loren Schwiebert,et al.  GPU-accelerated Gibbs ensemble Monte Carlo simulations of Lennard-Jonesium , 2013, Comput. Phys. Commun..

[19]  David Andelman,et al.  Electrostatic Properties of Membranes: The Poisson-Boltzmann Theory , 1995 .

[20]  Andreas W. Götz,et al.  SPFP: Speed without compromise - A mixed precision model for GPU accelerated molecular dynamics simulations , 2013, Comput. Phys. Commun..

[21]  Andrew W. Appel,et al.  An Efficient Program for Many-Body Simulation , 1983 .

[22]  Michela Taufer,et al.  GPU-Enabled Macromolecular Simulation: Challenges and Opportunities , 2013, Computing in Science & Engineering.

[23]  Wenjian Yu,et al.  Accelerated floating random walk algorithm for the electrostatic computation with 3-D rectilinear-shaped conductors , 2013, Simul. Model. Pract. Theory.

[24]  Klaus Schulten,et al.  Adapting a message-driven parallel application to GPU-accelerated clusters , 2008, 2008 SC - International Conference for High Performance Computing, Networking, Storage and Analysis.

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

[26]  Piet Hut,et al.  A hierarchical O(N log N) force-calculation algorithm , 1986, Nature.

[27]  Zhenli Xu,et al.  Mellin Transform and Image Charge Method for Dielectric Sphere in an Electrolyte , 2012, SIAM J. Appl. Math..

[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]  Berend Smit,et al.  Molecular Monte Carlo Simulations Using Graphics Processing Units: To Waste Recycle or Not? , 2011, Journal of chemical theory and computation.

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

[31]  Jack J. Purdum,et al.  C programming guide , 1983 .

[32]  Loren Schwiebert,et al.  Parallel Monte Carlo simulation in the canonical ensemble on the graphics processing unit , 2014, Int. J. Parallel Emergent Distributed Syst..

[33]  Sharon C. Glotzer,et al.  Pseudo-random number generation for Brownian Dynamics and Dissipative Particle Dynamics simulations on GPU devices , 2011, J. Comput. Phys..

[34]  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.

[35]  Zhenli Xu,et al.  A multi-scale Monte Carlo method for electrolytes , 2015, 1504.00454.

[36]  Oliver Rübel,et al.  High-Throughput Characterization of Porous Materials Using Graphics Processing Units. , 2012, Journal of chemical theory and computation.

[37]  Peter Virnau,et al.  Multi-GPU accelerated multi-spin Monte Carlo simulations of the 2D Ising model , 2010, Comput. Phys. Commun..

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

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

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

[41]  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..

[42]  Jihan Kim,et al.  Efficient Monte Carlo Simulations of Gas Molecules Inside Porous Materials. , 2012, Journal of chemical theory and computation.

[43]  Zhenli Xu,et al.  Efficient implementation of the Barnes-Hut octree algorithm for Monte Carlo simulations of charged systems , 2013, 1305.1825.

[44]  Wolfgang Paul,et al.  GPU accelerated Monte Carlo simulation of the 2D and 3D Ising model , 2009, J. Comput. Phys..