A survey of computational molecular science using graphics processing units

Computational molecular science is a very computationally intense discipline, and the use of parallel programming and high‐performance computers well established as being necessary to support research activities. Recently, graphical processing units (GPUs) have garnered substantial interest as alternative sources of high‐performance computing capability. These devices, although capable of very high rates of floating‐point arithmetic, are also intrinsically highly parallel processors and their effective exploitation typically requires extensive software refactoring and development. Here, we review the current landscape of GPU hardware and programming models, and provide a snapshot survey of the current state of computational molecular science codes ported to GPUs to help domain scientists and software developers understand the potential benefits and drawbacks of this new computing architecture. © 2012 John Wiley & Sons, Ltd.

[1]  Steven G. Johnson,et al.  The Design and Implementation of FFTW3 , 2005, Proceedings of the IEEE.

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

[3]  Nan Chen,et al.  A Parallel Implementation of the Cellular Potts Model for Simulation of Cell-Based Morphogenesis , 2006, ACRI.

[4]  Dong Xu,et al.  Advancements in Molecular Dynamics Simulations of Biomolecules on Graphical Processing Units , 2010 .

[5]  J. H. Moore,et al.  Multifactor-dimensionality reduction reveals high-order interactions among estrogen-metabolism genes in sporadic breast cancer. , 2001, American journal of human genetics.

[6]  Eric J. Kelmelis,et al.  CULA: hybrid GPU accelerated linear algebra routines , 2010, Defense + Commercial Sensing.

[7]  Todd J. Martinez,et al.  Graphical Processing Units for Quantum Chemistry , 2008, Computing in Science & Engineering.

[8]  Sriram Krishnamoorthy,et al.  GPU-Based Implementations of the Noniterative Regularized-CCSD(T) Corrections: Applications to Strongly Correlated Systems. , 2011, Journal of chemical theory and computation.

[9]  Steven J. M. Jones,et al.  Abyss: a Parallel Assembler for Short Read Sequence Data Material Supplemental Open Access , 2022 .

[10]  Gianni De Fabritiis,et al.  Swan: A tool for porting CUDA programs to OpenCL , 2011, Comput. Phys. Commun..

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

[12]  FRANCESCO AQUILANTE,et al.  MOLCAS 7: The Next Generation , 2010, J. Comput. Chem..

[13]  Ivan S. Ufimtsev,et al.  Dynamic Precision for Electron Repulsion Integral Evaluation on Graphical Processing Units (GPUs). , 2011, Journal of chemical theory and computation.

[14]  Weiguo Liu,et al.  Accelerating error correction in high-throughput short-read DNA sequencing data with CUDA , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.

[15]  Samuel Williams,et al.  The Landscape of Parallel Computing Research: A View from Berkeley , 2006 .

[16]  G. de Fabritiis,et al.  Complete reconstruction of an enzyme-inhibitor binding process by molecular dynamics simulations , 2011, Proceedings of the National Academy of Sciences.

[17]  H. Peter Hofstee,et al.  Introduction to the Cell multiprocessor , 2005, IBM J. Res. Dev..

[18]  Christine M. Isborn,et al.  Excited-State Electronic Structure with Configuration Interaction Singles and Tamm–Dancoff Time-Dependent Density Functional Theory on Graphical Processing Units , 2011, Journal of chemical theory and computation.

[19]  Gianni De Fabritiis Performance of the Cell processor for biomolecular simulations , 2007, Comput. Phys. Commun..

[20]  Alison Barros,et al.  Simulation of stochastic processes using graphics hardware , 2011, Comput. Phys. Commun..

[21]  Weiguo Liu,et al.  GPU-ClustalW: Using Graphics Hardware to Accelerate Multiple Sequence Alignment , 2006, HiPC.

[22]  Andreas W. Götz,et al.  Quantum Chemistry on Graphics Processing Units , 2010 .

[23]  Yongchao Liu,et al.  CUDA-MEME: Accelerating motif discovery in biological sequences using CUDA-enabled graphics processing units , 2010, Pattern Recognit. Lett..

[24]  E. Birney,et al.  Velvet: algorithms for de novo short read assembly using de Bruijn graphs. , 2008, Genome research.

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

[26]  A Eugene DePrince,et al.  Coupled Cluster Theory on Graphics Processing Units I. The Coupled Cluster Doubles Method. , 2011, Journal of chemical theory and computation.

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

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

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

[30]  Amitabh Varshney,et al.  High-throughput sequence alignment using Graphics Processing Units , 2007, BMC Bioinformatics.

[31]  John Paul Walters,et al.  Evaluating the use of GPUs in liver image segmentation and HMMER database searches , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.

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

[33]  Yongchao Liu,et al.  DecGPU: distributed error correction on massively parallel graphics processing units using CUDA and MPI , 2011, BMC Bioinformatics.

[34]  Matthew L. Leininger,et al.  Psi4: an open‐source ab initio electronic structure program , 2012 .

[35]  Yongchao Liu,et al.  MSA-CUDA: Multiple Sequence Alignment on Graphics Processing Units with CUDA , 2009, 2009 20th IEEE International Conference on Application-specific Systems, Architectures and Processors.

[36]  David P. Anderson,et al.  High-Throughput All-Atom Molecular Dynamics Simulations Using Distributed Computing , 2010, J. Chem. Inf. Model..

[37]  S. Schuster Next-generation sequencing transforms today's biology , 2008, Nature Methods.

[38]  W. Kohn,et al.  Self-Consistent Equations Including Exchange and Correlation Effects , 1965 .

[39]  Matthew G. Knepley,et al.  Preliminary Implementation of PETSc Using GPUs , 2013 .

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

[41]  Weiguo Liu,et al.  CUDA-BLASTP: Accelerating BLASTP on CUDA-Enabled Graphics Hardware , 2011, IEEE/ACM Transactions on Computational Biology and Bioinformatics.

[42]  Can Yang,et al.  GBOOST: a GPU-based tool for detecting gene-gene interactions in genome-wide case control studies , 2011, Bioinform..

[43]  Weiguo Liu,et al.  A Parallel Algorithm for Error Correction in High-Throughput Short-Read Data on CUDA-Enabled Graphics Hardware , 2010, J. Comput. Biol..

[44]  Jason H. Moore,et al.  Multifactor dimensionality reduction for graphics processing units enables genome-wide testing of epistasis in sporadic ALS , 2010, Bioinform..

[45]  Qiang Yang,et al.  BOOST: A fast approach to detecting gene-gene interactions in genome-wide case-control studies , 2010, American journal of human genetics.

[46]  Eric Darve,et al.  N-Body Simulations on GPUs , 2007, ArXiv.

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

[48]  Yongchao Liu,et al.  CUDASW++: optimizing Smith-Waterman sequence database searches for CUDA-enabled graphics processing units , 2009, BMC Research Notes.

[49]  Paul S. Crozier,et al.  General-purpose molecular dynamics simulations on GPU-based clusters , 2011 .