Vectorized algorithms for spiking neural network simulation

by Romain Brette, Dan F. M. Goodman
Abstract:
High-level languages (Matlab, Python) are popular in neuroscience because they are flexible and accelerate development. However, for simulating spiking neural networks, the cost of interpretation is a bottleneck. We describe a set of algorithms to simulate large spiking neural networks efficiently with high-level languages using vector-based operations. These algorithms constitute the core of Brian, a spiking neural network simulator written in the Python language. Vectorized simulation makes it possible to combine the flexibility of high-level languages with the computational efficiency usually associated with compiled languages.
Reference:
Romain Brette, Dan F. M. Goodman, 2011.Vectorized algorithms for spiking neural network simulation, Neural computation, volume 23.
Bibtex Entry:
@article{Brette2011,
 abstract = {High-level languages (Matlab, Python) are popular in neuroscience because they are flexible and accelerate development. However, for simulating spiking neural networks, the cost of interpretation is a bottleneck. We describe a set of algorithms to simulate large spiking neural networks efficiently with high-level languages using vector-based operations. These algorithms constitute the core of Brian, a spiking neural network simulator written in the Python language. Vectorized simulation makes it possible to combine the flexibility of high-level languages with the computational efficiency usually associated with compiled languages.},
 author = {Brette, Romain
and Goodman, Dan F. M.},
 day = {11},
 doi = {10.1162/NECO_a_00123},
 issn = {1530-888X},
 journal = {Neural computation},
 keyword = {Synapses},
 language = {eng},
 month = {Jun},
 number = {6},
 pages = {1503--1535},
 pmid = {21395437},
 title = {Vectorized algorithms for spiking neural network simulation.},
 volume = {23},
 year = {2011}
}