当前位置: X-MOL 学术Front. Neuroinform. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
PyGeNN: A Python library for GPU-enhanced neural networks
Frontiers in Neuroinformatics ( IF 2.5 ) Pub Date : 2021-03-15 , DOI: 10.3389/fninf.2021.659005
James C Knight 1 , Anton Komissarov 2, 3 , Thomas Nowotny 1
Affiliation  

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 modellers 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. 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.

中文翻译:


PyGeNN:用于 GPU 增强神经网络的 Python 库



全球排名前 10 的超级计算站点中有超过一半使用 GPU 加速器,并且它们在工作站和边缘计算设备中变得无处不在。 GeNN 是一个 C++ 库,用于为 GPU 生成高效的尖峰神经网络模拟代码。然而,到目前为止,GeNN 的全部灵活性只能通过用 C++ 编写模型描述和模拟代码来发挥。在这里,我们介绍 PyGeNN,这是一个 Python 包,它以最小的开销向 Python 公开了 GeNN 的所有功能。这提供了一种可以说更加用户友好的替代使用 GeNN 的方式,并允许建模者在不断发展的基于 Python 的机器学习和计算神经科学生态系统中使用 GeNN。此外,我们还证明,在 Python 和 C++ GeNN 模拟中,记录尖峰数据的开销会严重影响运行时间,并展示新的尖峰记录系统如何最多可减少这些开销。使用新的记录系统,我们证明了通过在现代 GPU 上使用 PyGeNN,我们可以比实时神经形态系统更快地模拟皮质柱的全尺寸模型。最后,我们表明,对具有复杂刺激和 PyGeNN 中定义的自定义三因素学习规则的较小模型进行长时间模拟,可以比实时模拟快两个数量级。
更新日期:2021-03-17
down
wechat
bug