Pseudo-random number generation for Brownian Dynamics and Dissipative Particle Dynamics simulations on GPU devices

  • Authors:
  • Carolyn L. Phillips;Joshua A. Anderson;Sharon C. Glotzer

  • Affiliations:
  • Applied Physics, University of Michigan, Ann Arbor, Michigan 48109, USA;Chemical Engineering, University of Michigan, Ann Arbor, Michigan 48109, USA;Applied Physics, University of Michigan, Ann Arbor, Michigan 48109, USA and Chemical Engineering, University of Michigan, Ann Arbor, Michigan 48109, USA and Material Science and Engineering, Unive ...

  • Venue:
  • Journal of Computational Physics
  • Year:
  • 2011

Quantified Score

Hi-index 31.46

Visualization

Abstract

Brownian Dynamics (BD), also known as Langevin Dynamics, and Dissipative Particle Dynamics (DPD) are implicit solvent methods commonly used in models of soft matter and biomolecular systems. The interaction of the numerous solvent particles with larger particles is coarse-grained as a Langevin thermostat is applied to individual particles or to particle pairs. The Langevin thermostat requires a pseudo-random number generator (PRNG) to generate the stochastic force applied to each particle or pair of neighboring particles during each time step in the integration of Newton's equations of motion. In a Single-Instruction-Multiple-Thread (SIMT) GPU parallel computing environment, small batches of random numbers must be generated over thousands of threads and millions of kernel calls. In this communication we introduce a one-PRNG-per-kernel-call-per-thread scheme, in which a micro-stream of pseudorandom numbers is generated in each thread and kernel call. These high quality, statistically robust micro-streams require no global memory for state storage, are more computationally efficient than other PRNG schemes in memory-bound kernels, and uniquely enable the DPD simulation method without requiring communication between threads.