Ruymgaart, A. Peter; Elber, Ron
Revisiting Molecular Dynamics on a CPU/GPU System: Water Kernel and SHAKE Parallelization
JOURNAL OF CHEMICAL THEORY AND COMPUTATION, 8:4624-4636, NOV 2012

We report processing unit (GPU) and Open-MP parallel implementations of water specific force calculations and of bond constraints for use in molecular dynamics simulation's. We focus on a typical laboratory computing environment in which a CPU with a few cores is attached to a GPU. We discuss in detail the design of the code, and we illustrate performance comparable to highly optimized codes such as GROMACS. Besides speed, our code shows excellent energy conservation. Utilization of water specific lists allows the efficient calculations of nonbonded interactions that include water molecules and results in a speed-up factor of more than 40 on the GPU compared to code optimized on a single CPU core for systems larger than 20 000 atoms. This is up 4-fold from a factor of 10 reported in our initial GPU implementation that did not include a water specific code. Another optimization is the implementation of constrained dynamics entirely on the GPU. The routine, which enforces Constraints of all bonds,. runs in parallel on multiple Open MP cores or entirely on the GPU. It is based on the conjugate gradient Solution of the Lagrange multipliers (CG SHAKE). The GPU implementation is partially in double precision and requires no communication with the CPU during the execution of the SHAKE algorithm. The (parallel) implementation of SHAKE allows an increase of the time step to 2.0 fs while maintaining excellent energy conservation. Interestingly, CG SHAKE is faster than the usual bond relaxation algorithm even on a single core if high accuracy is expected. The significant speedup of the optimized components transfers the computational bottleneck of the MD: calculation to the reciprocal part of particle mesh Ewald (PME).

DOI:10.1021/ct300324k

Find full text with Google Scholar.