Email updates

Keep up to date with the latest news and content from BMC Neuroscience and BioMed Central.

This article is part of the supplement: Twenty First Annual Computational Neuroscience Meeting: CNS*2012

Open Access Poster presentation

Improving Data Caching of the STochastic Engine for Pathway Simulation (STEPS)

Weiliang Chen* and Erik De Schutter

Author Affiliations

Computational Neuroscience Unit, Okinawa Institute of Science and Technology, Okinawa 904-0411, Japan

For all author emails, please log on.

BMC Neuroscience 2012, 13(Suppl 1):P154  doi:10.1186/1471-2202-13-S1-P154

The electronic version of this article is the complete one and can be found online at:

Published:16 July 2012

© 2012 Chen and De Schutter; licensee BioMed Central Ltd.

This is an Open Access article distributed under the terms of the Creative Commons Attribution License (, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Poster presentation

Though the years the efficiency of Gillespie SSA [1] has been improved by different approaches. Many alternatives of the Direct method have been proposed [2-4] reducing the algorithmic complexity from O(N) to O(1), whilst maintaining the accuracy of the solution. Other solutions provide further speedup by introducing approximations to the system, examples include tau-leaping [5] and several forms of deterministic-stochastic hybrid methods [6]. Parallelization of SSA has also been studied and achieved some degree of success [7]. However, most of these studies do not address the actual implementation of the simulator, since it depends on not only the algorithm itself, but also less generic factors such as the type of operating platform, the programming style of developers, etc.

In CNS 2011 we've introduced STEPS 1.3.0 [8], which replaces the Direct method with Composition and Rejection solution [4]. Although the new implementation provides reasonable speedup comparing to its predecessors and outperforms several stochastic reaction-diffusion simulators that are publicly available [9], further profiling indicated that all potential benefits of the CR solution had not yet been reached, mainly due to the less efficient data structure inherited from previous versions. This raised our interest on how the detail implementation of STEPS, particularly data structure that relates to the SSA kernel, affects its overall efficiency.

We’ve identified the proportions of algorithmic cost (computational cost introduced by SSA itself) and data accessing cost (the time for caching data from memory) in a single SSA iteration simulation with STEPS 1.3.0. The result confirms our speculation that although the algorithmic cost has been reduced significantly by the new algorithm, the data accessing cost was mostly maintained, therefore becoming the major bottleneck of performance. We’ve redesigned the internal data structure according to this analysis, so that data accessed during SSA iteration is stored cohesively, and consequently more friendly for memory caching. Benchmarking test shows that the performance of STEPS is significantly improved due to better memory caching of the simulator.

In this poster I will present our profiling results, and the changes we’ve made in our new implementation. I will also present the performance comparison of both versions, showing that the detailed implementation of data structures can significantly affect the performance of a SSA-based simulator, even if the algorithm applied remains the same.


  1. Gillespie D: Exact stochastic simulation of coupled chemical reactions.

    The journal of physical chemistry 1977. OpenURL

  2. Gibson M, Bruck J: Efficient exact stochastic simulation of chemical systems with many species and many channels.

    J. Phys. Chem. A 2000. OpenURL

  3. Li H, Petzold L: Logarithmic direct method for discrete stochastic simulation of chemically reacting systems.

    Journal of Chemical Physics 2006. OpenURL

  4. Slepoy A, Thompson AP, Plimpton SJ: A constant-time kinetic Monte Carlo algorithm for simulation of large biochemical reaction networks.

    Journal of Chemical Physics 2008, 128:205101. PubMed Abstract | Publisher Full Text OpenURL

  5. Gillespie D: Approximate accelerated stochastic simulation of chemically reacting systems.

    Journal of Chemical Physics 2001. OpenURL

  6. Wylie DC, Hori Y, Dinner AR, Chakraborty AK: A hybrid deterministic-stochastic algorithm for modeling cell signaling dynamics in spatially inhomogeneous environments and under the influence of external fields.

    The Journal of Physical Chemistry B 2006, 110:12749-12765. PubMed Abstract | Publisher Full Text OpenURL

  7. Jeschke M, Park A, Ewald R, Fujimoto R: Parallel and distributed spatial simulation of chemical reactions.

    Proceedings of the 22nd Workshop on Principles of Principles of Advanced and Distributed Simulation 2008. OpenURL

  8. Chen W, Hepburn I, De Schutter E: Improving performance of the STochastic Engine for Pathway Simulation (STEPS).

    BMC Neuroscience 2011. OpenURL

  9. Hepburn I, Chen W, Wils S, De Schutter E: STEPS: Efficient simulation of stochastic reaction-diffusion models in realistic morphologies.


    In submission and available at: webcite