Acceleration of discrete stochastic biochemical simulation using GPGPU

For systems made up of a small number of molecules, such as a biochemical network in a single cell, a simulation requires a stochastic approach, instead of a deterministic approach. The stochastic simulation algorithm (SSA) simulates the stochastic behavior of a spatially homogeneous system. Since stochastic approaches produce different results each time they are used, multiple runs are required in order to obtain statistical results; this results in a large computational cost. We have implemented a parallel method for using SSA to simulate a stochastic model; the method uses a graphics processing unit (GPU), which enables multiple realizations at the same time, and thus reduces the computational time and cost. During the simulation, for the purpose of analysis, each time course is recorded at each time step. A straightforward implementation of this method on a GPU is about 16 times faster than a sequential simulation on a CPU with hybrid parallelization; each of the multiple simulations is run simultaneously, and the computational tasks within each simulation are parallelized. We also implemented an improvement to the memory access and reduced the memory footprint, in order to optimize the computations on the GPU. We also implemented an asynchronous data transfer scheme to accelerate the time course recording function. To analyze the acceleration of our implementation on various sizes of model, we performed SSA simulations on different model sizes and compared these computation times to those for sequential simulations with a CPU. When used with the improved time course recording function, our method was shown to accelerate the SSA simulation by a factor of up to 130.

[1]  Hong Li,et al.  Efficient formulation of the stochastic simulation algorithm for chemically reacting systems. , 2004, The Journal of chemical physics.

[2]  Sarah M. Keating,et al.  Evolving a lingua franca and associated software infrastructure for computational systems biology: the Systems Biology Markup Language (SBML) project. , 2004, Systems biology.

[3]  Nagiza F. Samatova,et al.  The sorting direct method for stochastic simulation of biochemical systems with varying reaction execution behavior , 2006, Comput. Biol. Chem..

[4]  Michael Hucka,et al.  LibSBML: an API Library for SBML , 2008, Bioinform..

[5]  Takuji Nishimura,et al.  Mersenne twister: a 623-dimensionally equidistributed uniform pseudo-random number generator , 1998, TOMC.

[6]  Michael A. Gibson,et al.  Efficient Exact Stochastic Simulation of Chemical Systems with Many Species and Many Channels , 2000 .

[7]  Mudita Singhal,et al.  COPASI - a COmplex PAthway SImulator , 2006, Bioinform..

[8]  H. Kitano Systems Biology: A Brief Overview , 2002, Science.

[9]  Roshan M. D'Souza,et al.  Accelerating the Gillespie Exact Stochastic Simulation Algorithm Using Hybrid Parallel Execution on Graphics Processing Units , 2012, PloS one.

[10]  Mark A. Stalzer,et al.  Efficient Formulations for Exact Stochastic Simulation of Chemical Systems , 2011, IEEE/ACM Transactions on Computational Biology and Bioinformatics.

[11]  D. Gillespie Exact Stochastic Simulation of Coupled Chemical Reactions , 1977 .

[12]  A. Arkin,et al.  Stochastic kinetic analysis of developmental pathway bifurcation in phage lambda-infected Escherichia coli cells. , 1998, Genetics.

[13]  Hiroaki Kitano,et al.  The systems biology markup language (SBML): a medium for representation and exchange of biochemical network models , 2003, Bioinform..

[14]  Hong Li,et al.  Efficient Parallelization of the Stochastic Simulation Algorithm for Chemically Reacting Systems On the Graphics Processing Unit , 2010, Int. J. High Perform. Comput. Appl..

[15]  A. Arkin,et al.  Stochastic mechanisms in gene expression. , 1997, Proceedings of the National Academy of Sciences of the United States of America.

[16]  Jens H. Krüger,et al.  A Survey of General‐Purpose Computation on Graphics Hardware , 2007, Eurographics.

[17]  D. Gillespie A General Method for Numerically Simulating the Stochastic Time Evolution of Coupled Chemical Reactions , 1976 .

[18]  Sheng Wu,et al.  StochKit2: software for discrete stochastic simulation of biochemical systems with events , 2011, Bioinform..

[19]  Hamid Bolouri,et al.  Dizzy: Stochastic Simulation of Large-scale Genetic Regulatory Networks , 2005, J. Bioinform. Comput. Biol..