Acceleration of discrete stochastic biochemical simulation using GPGPU

Kei Sumiyoshi, Kazuki Hirata, Noriko Hiroi, Akira Funahashi

Research output: Contribution to journalArticle

5 Citations (Scopus)

Abstract

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.

Original languageEnglish
Article number42
JournalFrontiers in Physiology
Volume6
Issue numberFEB
DOIs
Publication statusPublished - 2015

Fingerprint

Costs and Cost Analysis
Transfer (Psychology)

Keywords

  • CUDA
  • Direct method
  • GPGPU
  • Parallel processing
  • SBML
  • Stochastic simulation algorithm

ASJC Scopus subject areas

  • Physiology
  • Physiology (medical)

Cite this

Acceleration of discrete stochastic biochemical simulation using GPGPU. / Sumiyoshi, Kei; Hirata, Kazuki; Hiroi, Noriko; Funahashi, Akira.

In: Frontiers in Physiology, Vol. 6, No. FEB, 42, 2015.

Research output: Contribution to journalArticle

Sumiyoshi, Kei ; Hirata, Kazuki ; Hiroi, Noriko ; Funahashi, Akira. / Acceleration of discrete stochastic biochemical simulation using GPGPU. In: Frontiers in Physiology. 2015 ; Vol. 6, No. FEB.
@article{79711a4cf6fb4a79a644ba93314fcc3c,
title = "Acceleration of discrete stochastic biochemical simulation using GPGPU",
abstract = "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.",
keywords = "CUDA, Direct method, GPGPU, Parallel processing, SBML, Stochastic simulation algorithm",
author = "Kei Sumiyoshi and Kazuki Hirata and Noriko Hiroi and Akira Funahashi",
year = "2015",
doi = "10.3389/fphys.2015.00042",
language = "English",
volume = "6",
journal = "Frontiers in Physiology",
issn = "1664-042X",
publisher = "Frontiers Research Foundation",
number = "FEB",

}

TY - JOUR

T1 - Acceleration of discrete stochastic biochemical simulation using GPGPU

AU - Sumiyoshi, Kei

AU - Hirata, Kazuki

AU - Hiroi, Noriko

AU - Funahashi, Akira

PY - 2015

Y1 - 2015

N2 - 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.

AB - 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.

KW - CUDA

KW - Direct method

KW - GPGPU

KW - Parallel processing

KW - SBML

KW - Stochastic simulation algorithm

UR - http://www.scopus.com/inward/record.url?scp=84926473565&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84926473565&partnerID=8YFLogxK

U2 - 10.3389/fphys.2015.00042

DO - 10.3389/fphys.2015.00042

M3 - Article

VL - 6

JO - Frontiers in Physiology

JF - Frontiers in Physiology

SN - 1664-042X

IS - FEB

M1 - 42

ER -