SCNN: An Accelerator for Compressed-sparse Convolutional Neural Networks
arXiv:1708.04485
Abstract
Convolutional Neural Networks (CNNs) have emerged as a fundamental technology for machine learning. High performance and extreme energy efficiency are critical for deployments of CNNs in a wide range of situations, especially mobile platforms such as autonomous vehicles, cameras, and electronic personal assistants. This paper introduces the Sparse CNN (SCNN) accelerator architecture, which improves performance and energy efficiency by exploiting the zero-valued weights that stem from network pruning during training and zero-valued activations that arise from the common ReLU operator applied during inference. Specifically, SCNN employs a novel dataflow that enables maintaining the sparse weights and activations in a compressed encoding, which eliminates unnecessary data transfers and reduces storage requirements. Furthermore, the SCNN dataflow facilitates efficient delivery of those weights and activations to the multiplier array, where they are extensively reused. In addition, the accumulation of multiplication products are performed in a novel accumulator array. Our results show that on contemporary neural networks, SCNN can improve both performance and energy by a factor of 2.7x and 2.3x, respectively, over a comparably provisioned dense CNN accelerator.
References in corpus (3)
Cited by in corpus (20)
- Interstellar: Using Halide's Scheduling Language to Analyze DNN Accelerators
- Enable Deep Learning on Mobile Devices: Methods, Systems, and Applications
- Hardware Approximate Techniques for Deep Neural Network Accelerators: A Survey
- Mind Mappings: Enabling Efficient Algorithm-Accelerator Mapping Space Search
- Accelerator-Aware Pruning for Convolutional Neural Networks
- An Algorithm-Hardware Co-Optimized Framework for Accelerating N:M Sparse Transformers
- Balanced Sparsity for Efficient DNN Inference on GPU
- Cluster Pruning: An Efficient Filter Pruning Method for Edge AI Vision Applications
- Gamma-ray Astrophysics in the MeV Range: the ASTROGAM Concept and Beyond
- Capstan: A Vector RDA for Sparsity
- Low-Memory Neural Network Training: A Technical Report
- CapsAcc: An Efficient Hardware Accelerator for CapsuleNets with Data Reuse
- SPRING: A Sparsity-Aware Reduced-Precision Monolithic 3D CNN Accelerator Architecture for Training and Inference
- MARS: Multi-macro Architecture SRAM CIM-Based Accelerator with Co-designed Compressed Neural Networks
- DESCNet: Developing Efficient Scratchpad Memories for Capsule Network Hardware
- SparseTrain:Leveraging Dynamic Sparsity in Training DNNs on General-Purpose SIMD Processors
- MirBot: A collaborative object recognition system for smartphones using convolutional neural networks
- VSCNN: Convolution Neural Network Accelerator With Vector Sparsity
- Scalar Arithmetic Multiple Data: Customizable Precision for Deep Neural Networks
- GrateTile: Efficient Sparse Tensor Tiling for CNN Processing