John E. Stone, David J. Hardy, Barry Isralewitz, and Klaus Schulten.
GPU algorithms for molecular modeling.
In Jack Dongarra, David A. Bader, and Jakub Kurzak, editors,
Scientific Computing with Multicore and Accelerators, chapter 16, pp.
351-371. Chapman & Hall/CRC Press, 2011.
STON2011
Over the past decade, graphics processing units (GPUs) have become fully programmable
parallel computing devices capable of accelerating a wide variety of data-parallel
algorithms used in computational science and engineering. The tremendous
computational capabilities of GPUs can be employed to accelerate molecular modeling
applications, enabling molecular dynamics simulations and their analyses to be run much
faster than before and allowing the use of scientic techniques that are impractical on
conventional hardware platforms. In this chapter, we describe the key attributes of GPU
hardware architecture and the algorithm design techniques required to successfully
exploit
the computational capabilities of GPUs for scientic applications. We
illustrate these techniques for molecular modeling applications, describing the process
involved in adapting or redesigning existing algorithms for high performance on GPUs.
Many of these techniques can be applied beyond the molecular modeling eld and should
be of interest to anyone contemplating adaptation of existing algorithms to GPUs.