Sorbonne Université, INSERM, CNRS, Institut de la Vision, Paris, France.
Department of Electrical and Electronic Engineering, Imperial College London, London, UK.
Sci Rep. 2020 Jan 15;10(1):410. doi: 10.1038/s41598-019-54957-7.
"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.
"Brian" 是一个流行的基于 Python 的尖峰神经网络模拟器,常用于计算神经科学领域。GeNN 是一个基于 C++的元编译器,用于使用消费级或高性能图形处理单元 (GPU) 加速尖峰神经网络模拟。在这里,我们引入了一个新的软件包 Brian2GeNN,它将这两个系统连接起来,使用户可以在 Brian 中开发模型时利用 GeNN GPU 加速,而无需具备任何关于 GPU、C++或 GeNN 的技术知识。新的 Brian2GeNN 软件使用代码生成流水线将 Brian 脚本转换为可以用作 GeNN 输入的 C++代码,随后可以在合适的 NVIDIA GPU 加速器上运行。从用户的角度来看,整个流水线只需在他们的 Brian 脚本中添加两行简单的代码即可调用。我们已经表明,使用 Brian2GeNN,来自文献中的两个非平凡模型可以比在 CPU 上快数十到数百倍。