University of Sussex
Browse
- No file added yet -

PyGeNN: a Python library for GPU-enhanced Neural Networks

Download (1.6 MB)
journal contribution
posted on 2023-06-10, 01:25 authored by James KnightJames Knight, Anton Komissarov, Thomas NowotnyThomas Nowotny
More than half of the Top 10 supercomputing sites worldwide use GPU accelerators and they are becoming ubiquitous in workstations and edge computing devices. GeNN is a C++ library for generating efficient spiking neural network simulation code for GPUs. However, until now, the full flexibility of GeNN could only be harnessed by writing model descriptions and simulation code in C++. Here we present PyGeNN, a Python package which exposes all of GeNN's functionality to Python with minimal overhead. This provides an alternative, arguably more user-friendly, way of using GeNN and allows modelers to use GeNN within the growing Python-based machine learning and computational neuroscience ecosystems. In addition, we demonstrate that, in both Python and C++ GeNN simulations, the overheads of recording spiking data can strongly affect runtimes and show how a new spike recording system can reduce these overheads by up to 10×. Using the new recording system, we demonstrate that by using PyGeNN on a modern GPU, we can simulate a full-scale model of a cortical column faster even than real-time neuromorphic systems. Finally, we show that long simulations of a smaller model with complex stimuli and a custom three-factor learning rule defined in PyGeNN can be simulated almost two orders of magnitude faster than real-time.

History

Publication status

  • Published

File Version

  • Published version

Journal

Frontiers in Neuroinformatics

ISSN

1662-5196

Publisher

Frontiers Media

Volume

15

Page range

1-12

Article number

a659005

Department affiliated with

  • Informatics Publications

Full text available

  • Yes

Peer reviewed?

  • Yes

Legacy Posted Date

2021-10-15

First Open Access (FOA) Date

2021-10-15

First Compliant Deposit (FCD) Date

2021-10-14

Usage metrics

    University of Sussex (Publications)

    Categories

    No categories selected

    Licence

    Exports

    RefWorks
    BibTeX
    Ref. manager
    Endnote
    DataCite
    NLM
    DC