Concepedia

Publication | Open Access

PyNN: a common interface for neuronal network simulators

622

Citations

19

References

2008

Year

TLDR

Computational neuroscience has produced many diverse spiking‑neuron simulators, each with its own language, which hampers model portability and collaboration but also allows cross‑checking and specialized optimizations. The authors propose a common programming interface to mitigate simulator diversity while preserving its advantages. PyNN implements this interface in Python, enabling a single simulation script to run unchanged on NEURON, NEST, PCSIM, Brian, and Heidelberg VLSI hardware. PyNN boosts productivity by providing high‑level abstraction, promotes code sharing, and improves reliability through easy multi‑simulator verification. PyNN is open‑source and available at http://neuralensemble.org/PyNN.

Abstract

Computational neuroscience has produced a diversity of software for simulations of networks of spiking neurons, with both negative and positive consequences. On the one hand, each simulator uses its own programming or configuration language, leading to considerable difficulty in porting models from one simulator to another. This impedes communication between investigators and makes it harder to reproduce and build on the work of others. On the other hand, simulation results can be cross-checked between different simulators, giving greater confidence in their correctness, and each simulator has different optimizations, so the most appropriate simulator can be chosen for a given modelling task. A common programming interface to multiple simulators would reduce or eliminate the problems of simulator diversity while retaining the benefits. PyNN is such an interface, making it possible to write a simulation script once, using the Python programming language, and run it without modification on any supported simulator (currently NEURON, NEST, PCSIM, Brian and the Heidelberg VLSI neuromorphic hardware). PyNN increases the productivity of neuronal network modelling by providing high-level abstraction, by promoting code sharing and reuse, and by providing a foundation for simulator-agnostic analysis, visualization and data-management tools. PyNN increases the reliability of modelling studies by making it much easier to check results on multiple simulators. PyNN is open-source software and is available from http://neuralensemble.org/PyNN.

References

YearCitations

Page 1