sPyNNaker: A Software Package for Running PyNN Simulations on SpiNNaker

This work presents sPyNNaker 4.0.0, the latest version of the software package for simulating PyNN-defined spiking neural networks (SNNs) on the SpiNNaker neuromorphic platform. Operations underpinning realtime SNN execution are presented, including an event-based operating system facilitating efficient time-driven neuron state updates and pipelined event-driven spike processing. Preprocessing, realtime execution, and neuron/synapse model implementations are discussed, all in the context of a simple example SNN. Simulation results are demonstrated, together with performance profiling providing insights into how software interacts with the underlying hardware to achieve realtime execution. System performance is shown to be within a factor of 2 of the original design target of 10,000 synaptic events per millisecond, however SNN topology is shown to influence performance considerably. A cost model is therefore developed characterizing the effect of network connectivity and SNN partitioning. This model enables users to estimate SNN simulation performance, allows the SpiNNaker team to make predictions on the impact of performance improvements, and helps demonstrate the continued potential of the SpiNNaker neuromorphic hardware.

[1]  Eugene M. Izhikevich,et al.  Simple model of spiking neurons , 2003, IEEE Trans. Neural Networks.

[2]  Steve B. Furber,et al.  Accuracy and Efficiency in Fixed-Point Neural ODE Solvers , 2015, Neural Computation.

[3]  Steve B. Furber,et al.  Building a Spiking Neural Network Model of the Basal Ganglia on SpiNNaker , 2018, IEEE Transactions on Cognitive and Developmental Systems.

[4]  Xiao-Jing Wang,et al.  Spike-Frequency Adaptation of a Generalized Leaky Integrate-and-Fire Model Neuron , 2004, Journal of Computational Neuroscience.

[5]  Jim D. Garside,et al.  Overview of the SpiNNaker System Architecture , 2013, IEEE Transactions on Computers.

[6]  Steve B. Furber,et al.  Correctness and performance of the SpiNNaker architecture , 2013, The 2013 International Joint Conference on Neural Networks (IJCNN).

[7]  Carver Mead,et al.  Analog VLSI and neural systems , 1989 .

[8]  Stephen B. Furber,et al.  Efficient modelling of spiking neural networks on a scalable chip multiprocessor , 2008, 2008 IEEE International Joint Conference on Neural Networks (IEEE World Congress on Computational Intelligence).

[9]  Marc-Oliver Gewaltig,et al.  NEST (NEural Simulation Tool) , 2007, Scholarpedia.

[10]  Steve B. Furber,et al.  SpiNNaker: Enhanced multicast routing , 2015, Parallel Comput..

[11]  Steve B. Furber,et al.  A framework for plasticity implementation on the SpiNNaker neural architecture , 2015, Front. Neurosci..

[12]  Apostolos P. Georgopoulos,et al.  Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems.Computational Neuroscience.ByPeter Dayanand, L F Abbott.Cambridge (Massachusetts): MIT Press. $50.00. xv + 460 p; ill.; index. ISBN: 0–262–04199–5. 2001. , 2004 .

[13]  Andrew P Davison,et al.  The SONATA data format for efficient description of large-scale network models , 2020, PLoS computational biology.

[14]  Giacomo Indiveri,et al.  A reconfigurable on-line learning spiking neuromorphic processor comprising 256 neurons and 128K synapses , 2015, Front. Neurosci..

[15]  Jim D. Garside,et al.  SpiNNaker—Programming Model , 2015, IEEE Transactions on Computers.

[16]  Jim D. Garside,et al.  SpiNNaker: A 1-W 18-Core System-on-Chip for Massively-Parallel Neural Network Simulation , 2013, IEEE Journal of Solid-State Circuits.

[17]  Christian Y. A. Brenninkmeijer,et al.  SpiNNTools: The Execution Engine for the SpiNNaker Platform , 2018, Front. Neurosci..

[18]  Steve B. Furber,et al.  Large-Scale Simulations of Plastic Neural Networks on Neuromorphic Hardware , 2016, Front. Neuroanat..

[19]  Steve B. Furber,et al.  Algorithm and software for simulation of spiking neural networks on the multi-chip SpiNNaker system , 2010, The 2010 International Joint Conference on Neural Networks (IJCNN).

[20]  Andrew N. Sloss,et al.  ARM System Developer's Guide: Designing and Optimizing System Software , 2004 .

[21]  Steve Furber,et al.  Power-efficient simulation of detailed cortical microcircuits on SpiNNaker , 2012, Journal of Neuroscience Methods.

[22]  Steve B. Furber,et al.  Real-time cortical simulation on neuromorphic hardware , 2019, Philosophical Transactions of the Royal Society A.

[23]  A. Destexhe Kinetic Models of Synaptic Transmission , 1997 .

[24]  Stefan Rotter,et al.  Exact digital simulation of time-invariant linear systems with applications to neuronal modeling , 1999, Biological Cybernetics.

[25]  Manish Kumar Large-scale neuromorphic computing systems , 2016 .

[26]  Bernard Brezzo,et al.  TrueNorth: Design and Tool Flow of a 65 mW 1 Million Neuron Programmable Neurosynaptic Chip , 2015, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[27]  Steve B. Furber,et al.  Event-Driven Simulation of Arbitrary Spiking Neural Networks on SpiNNaker , 2011, ICONIP.

[28]  Michael L. Hines,et al.  The NEURON Book , 2006 .

[29]  Steve B. Furber,et al.  Using Stochastic Spiking Neural Networks on SpiNNaker to Solve Constraint Satisfaction Problems , 2017, Front. Neurosci..

[30]  Steve B. Furber,et al.  The SpiNNaker Project , 2014, Proceedings of the IEEE.

[31]  Johannes Schemmel,et al.  A wafer-scale neuromorphic hardware system for large-scale neural modeling , 2010, Proceedings of 2010 IEEE International Symposium on Circuits and Systems.

[32]  Hong Wang,et al.  Loihi: A Neuromorphic Manycore Processor with On-Chip Learning , 2018, IEEE Micro.

[33]  Steve B. Furber,et al.  Synapse-Centric Mapping of Cortical Models to the SpiNNaker Neuromorphic Architecture , 2016, Front. Neurosci..

[34]  Alois Knoll,et al.  Musculoskeletal Robots: Scalability in Neural Control , 2016, IEEE Robotics & Automation Magazine.

[35]  Romain Brette,et al.  The Brian Simulator , 2009, Front. Neurosci..

[36]  Francesco Galluppi,et al.  A forecast-based STDP rule suitable for neuromorphic implementation , 2012, Neural Networks.

[37]  Hong Wang,et al.  Programming Spiking Neural Networks on Intel’s Loihi , 2018, Computer.

[38]  Giacomo Indiveri,et al.  Frontiers in Neuromorphic Engineering , 2011, Front. Neurosci..

[39]  Steve B. Furber,et al.  Neuromodulated Synaptic Plasticity on the SpiNNaker Neuromorphic System , 2018, Front. Neurosci..

[40]  Rodrigo Alvarez-Icaza,et al.  Neurogrid: A Mixed-Analog-Digital Multichip System for Large-Scale Neural Simulations , 2014, Proceedings of the IEEE.

[41]  Pierre Yger,et al.  PyNN: A Common Interface for Neuronal Network Simulators , 2008, Front. Neuroinform..

[42]  Markus Diesmann,et al.  Advancing the Boundaries of High-Connectivity Network Simulation with Distributed Computing , 2005, Neural Computation.

[43]  Alois Knoll,et al.  The Human Brain Project: Creating a European Research Infrastructure to Decode the Human Brain , 2016, Neuron.

[44]  Steve B. Furber,et al.  Performance Comparison of the Digital Neuromorphic Hardware SpiNNaker and the Neural Network Simulation Software NEST for a Full-Scale Cortical Microcircuit Model , 2018, Front. Neurosci..

[45]  Teresa Serrano-Gotarredona,et al.  A Spiking Neural Network Model of the Lateral Geniculate Nucleus on the SpiNNaker Machine , 2017, Front. Neurosci..