SpikeSim: An end-to-end Compute-in-Memory Hardware Evaluation Tool for Benchmarking Spiking Neural Networks

Abhishek Moitra,Abhiroop Bhattacharjee,Runcong Kuang,Gokul Krishnan,Yu Cao,Priyadarshini Panda
DOI: https://doi.org/10.48550/arXiv.2210.12899
2022-10-24
Abstract:SNNs are an active research domain towards energy efficient machine intelligence. Compared to conventional ANNs, SNNs use temporal spike data and bio-plausible neuronal activation functions such as Leaky-Integrate Fire/Integrate Fire (LIF/IF) for data processing. However, SNNs incur significant dot-product operations causing high memory and computation overhead in standard von-Neumann computing platforms. Today, In-Memory Computing (IMC) architectures have been proposed to alleviate the "memory-wall bottleneck" prevalent in von-Neumann architectures. Although recent works have proposed IMC-based SNN hardware accelerators, the following have been overlooked- 1) the adverse effects of crossbar non-ideality on SNN performance due to repeated analog dot-product operations over multiple time-steps, 2) hardware overheads of essential SNN-specific components such as the LIF/IF and data communication modules. To this end, we propose SpikeSim, a tool that can perform realistic performance, energy, latency and area evaluation of IMC-mapped SNNs. SpikeSim consists of a practical monolithic IMC architecture called SpikeFlow for mapping SNNs. Additionally, the non-ideality computation engine (NICE) and energy-latency-area (ELA) engine performs hardware-realistic evaluation of SpikeFlow-mapped SNNs. Based on 65nm CMOS implementation and experiments on CIFAR10, CIFAR100 and TinyImagenet datasets, we find that the LIF/IF neuronal module has significant area contribution (>11% of the total hardware area). We propose SNN topological modifications leading to 1.24x and 10x reduction in the neuronal module's area and the overall energy-delay-product value, respectively. Furthermore, in this work, we perform a holistic comparison between IMC implemented ANN and SNNs and conclude that lower number of time-steps are the key to achieve higher throughput and energy-efficiency for SNNs compared to 4-bit ANNs.
Neural and Evolutionary Computing,Computer Vision and Pattern Recognition
What problem does this paper attempt to address?
The problem that this paper attempts to solve is the key implementation challenges encountered when implementing hardware accelerators for Spiking Neural Networks (SNNs) on In - Memory Computing (IMC) architectures. Specifically, the paper focuses on the following two main issues: 1. **Impact of Transconductance - Array Non - idealities on SNN Performance**: Due to the repeated analog dot - product operations over multiple time steps, the non - idealities of the transconductance array can have an adverse impact on the performance of SNNs. These non - idealities include resistance variations, device conductance variations, etc., which can lead to inaccuracies in the calculation results and thus affect the overall performance of SNNs. 2. **Hardware Overhead of SNN - Specific Components**: Components specific to SNNs, such as Leaky - Integrate Fire/Integrate Fire (LIF/IF) neuron modules and data communication modules, bring additional hardware overhead. In particular, the LIF/IF neuron module requires a large amount of storage space when processing membrane potentials over multiple time steps, thereby increasing the chip area and energy consumption. To address these issues, the paper proposes SpikeSim, an end - to - end hardware evaluation tool for evaluating the performance, energy, latency, and area of SNNs based on IMC architectures. SpikeSim consists of the following key components: - **SpikeFlow Architecture**: A monolithic IMC architecture for mapping SNNs. SpikeFlow integrates the non - linear activation functions specific to SNNs (such as LIF/IF neurons) and a lightweight DIFF module to support signed multiply - accumulate (MAC) operations without the traditional dual - transconductance - array method. - **Non - idealities Computation Engine (NICE)**: Used to simulate non - idealities in the transconductance array, such as resistance and device conductance variations, providing a hardware - realistic SNN inference performance evaluation. NICE also adopts a non - idealities - aware weight encoding scheme to improve the inference accuracy of pre - trained SNNs on simulated transconductance arrays. - **Energy - Latency - Area (ELA) Engine**: Used to evaluate the hardware - realistic energy efficiency, latency, and area of SNNs mapped by SpikeFlow. Through these components, SpikeSim can provide a comprehensive hardware evaluation, helping researchers better understand the actual performance of SNNs on IMC architectures and optimize the design to improve performance and energy efficiency.