University of Sussex
Browse
__smbhome.uscs.susx.ac.uk_tjk30_Documents_s41598-019-54957-7.pdf (1.99 MB)

Brian2GeNN: accelerating spiking neural network simulations with graphics hardware

Download (1.99 MB)
Version 2 2023-06-12, 09:16
Version 1 2023-06-09, 19:50
journal contribution
posted on 2023-06-12, 09:16 authored by Marcel Stimberg, Dan F M Goodman, Thomas NowotnyThomas Nowotny
“Brian” is a popular Python-based simulator for spiking neural networks, commonly used in computational neuroscience. GeNN is a C++-based meta-compiler for accelerating spiking neural network simulations using consumer or high performance grade graphics processing units (GPUs). Here we introduce a new software package, Brian2GeNN, that connects the two systems so that users can make use of GeNN GPU acceleration when developing their models in Brian, without requiring any technical knowledge about GPUs, C++ or GeNN. The new Brian2GeNN software uses a pipeline of code generation to translate Brian scripts into C++ code that can be used as input to GeNN, and subsequently can be run on suitable NVIDIA GPU accelerators. From the user’s perspective, the entire pipeline is invoked by adding two simple lines to their Brian scripts. We have shown that using Brian2GeNN, two non-trivial models from the literature can run tens to hundreds of times faster than on CPU.

Funding

Human Brain Project Specific Grant Agreement 2 ? HBP SGA2; G2410; EUROPEAN UNION; 785907

Green brain; G0924; EPSRC-ENGINEERING & PHYSICAL SCIENCES RESEARCH COUNCIL; EP/J019690/1

Brains on Board: Neuromorphic Control of Flying Robots; G1980; EPSRC-ENGINEERING & PHYSICAL SCIENCES RESEARCH COUNCIL; EP/P006094/1

History

Publication status

  • Published

File Version

  • Published version

Journal

Scientific Reports

ISSN

2045-2322

Publisher

Nature Research

Issue

a410

Volume

10

Department affiliated with

  • Informatics Publications

Research groups affiliated with

  • Centre for Computational Neuroscience and Robotics Publications

Notes

We thank James Knight for assisting us with running benchmarks on the Tesla V100 device and helping with adjustments in GeNN. This work was partially funded by the EPSRC (grants EP/J019690/1, EP/P006094/1) and Horizon 2020 research and innovation program under grant agreement no 785907 (Human Brain Project, SGA2), and the Royal Society (grant RG170298). The Titan Xp and the K40c used for this research were donated by the NVIDIA Corporation. The authors gratefully acknowledge the Gauss Centre for Supercomputing e.V. (www.gauss-centre.eu) for supporting this project by providing computing time through the John von Neumann Institute for Computing (NIC) on the GCS Supercomputer JUWELS at Jülich Supercomputing Centre (JSC) Brian2GeNN is developed publicly on github (https://github.com/brian-team/brian2genn). The scripts and raw results of the benchmark runs are available at https://github.com/brian-team/brian2genn_benchmarks. The authors declare that they have no competing interests with respect to this work and the funders have not played any role in its design or interpretation.

Full text available

  • No

Peer reviewed?

  • Yes

Legacy Posted Date

2019-12-04

First Open Access (FOA) Date

2020-01-16

First Compliant Deposit (FCD) Date

2019-12-03

Usage metrics

    University of Sussex (Publications)

    Categories

    No categories selected

    Licence

    Exports

    RefWorks
    BibTeX
    Ref. manager
    Endnote
    DataCite
    NLM
    DC