FastSNN: A CUDA-Based Programming Framework for Rapid Training SNNs

Yuchen Wang,Lang Xue,Chengzhuo Lu,Bingyan Yi,Hongyu Qing,Hong Qu
DOI: https://doi.org/10.1109/csis-iac60628.2023.10364218
2023-01-01
Abstract:Spiking neural networks (SNNs) have attracted extensive attention due to their biological plausibility and low-power event-driven computation. However, since spiking neural networks have both temporal and spatial dimensions, more training time is required when training SNNs with a framework specially designed for artificial neural networks (ANNs), such as PyTorch and TensorFlow. In order to solve this problem, we built a programming framework FastSNN specially designed for SNN based on CUDA. The training time required for the network built using this framework can be significantly shortened. Furthermore, FastSNN focuses on allowing rookies to build SNN-based applications quickly. To this end, we have integrated all the components required to build SNNs in the framework. Specifically, it includes popular datasets (static/dynamic), encoding methods (frequency encoding/time encoding), commonly used spiking neurons, network modules, training methods, and visualization tools. Experimental results prove that the training time of the SNN built using our framework can be shortened by 2 to more than 10 times compared with the SNN built using PyTorch.
What problem does this paper attempt to address?