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: Twentieth Annual Computational Neuroscience Meeting: CNS*2011

Open Access Poster presentation

Improving performance of the STochastic Engine for Pathway Simulation (STEPS)

Weiliang Chen1*, Iain Hepburn12 and Erik De Schutter12

Author Affiliations

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

2 Theoretical Neurobiology, University of Antwerp, B-2610 Antwerp, Belgium

For all author emails, please log on.

BMC Neuroscience 2011, 12(Suppl 1):P58  doi:10.1186/1471-2202-12-S1-P58

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

Published:18 July 2011

© 2011 Chen et al; 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

STEPS ( webcite) is a GNU-licensed simulation platform that uses an extension of Gillespie's SSA [1] to deal with reactions and diffusion of molecules in 3D reconstructions of neuronal morphology and tissue [2]. In STEPS, the diffusion of molecules is simulated as diffusive fluxes between tetrahedral elements in the mesh, represented by a series of first-order reactions.

STEPS has been used in various research projects where its overall performance was considered adequate. However, as more complex models are being developed and investigated, total model simulation times became an issue leading to requests for a faster reaction-diffusion simulator. Here we discuss a number of strategies we have followed to improve STEPS performance at different levels.

The previous implementation of STEPS adapted Gibson and Bruck’s enhancement of the Direct method [3] with a k-ary tree structure. The overall complexity of searching and updating of this method is O(logkN), giving N as the total number of kinetic processes in the system and k as the branch width of the tree. Although this is a great improvement comparing to the O(N) complexity of Gillespie’s original method, the logarithmic dependency of N becomes a critical limitation of performance, particularly in simulations with high amount of tetrahedral elements and consequently large N. Recently a constant-time version of the Direct method with a slightly more complex data structure has been introduced [4], providing an attractive searching and updating complexity of O(1), independent of N. This method is implemented in the new version of STEPS. In the poster, I will present the validation of the new simulator by comparing the stochastic simulation results with analytical solutions. I will also present the improvement made by adapting the new method.

Several approaches to parallelizing STEPS have been investigated. In a realistic simulation, the state of the system, including molecule distribution, reaction/diffusion rates, may be frequently read and/or modified during the simulation. Some of these operations could be greatly parallelized in shared memory architecture, efficiently reducing the cost of data accessing. Previous studies [5] also suggested that the Direct SSA could be parallelized as a Parallel Discrete-Event Simulation (PDES). However, the performance of such a parallelization significantly depends on the model itself as well as the approach of simulation decomposition. Some examples of above methods will be present and discussed in the poster.


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

    The journal of physical chemistry 1977. OpenURL

  2. Wils S: STEPS: modeling and simulating complex reaction-diffusion systems with Python.

    Frontiers in Neuroinformatics 2009. PubMed Abstract | PubMed Central Full Text OpenURL

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

    J Phys Chem A 2000. OpenURL

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

    The journal of chemical physics 2008, 128:205101. PubMed Abstract | Publisher Full Text OpenURL

  5. Dematté L, Mazza T: On parallel stochastic simulation of diffusive systems.

    Computational methods in systems biology 2008. OpenURL