In plain words: A chip design cuts image-recognition multiplications with a math trick, skips zero weights, and feeds small multiplier grids from memory arranged to keep them busy. On VGG16 it ran over 5 times faster and used 20 to 30 times less energy than the dense version.
Abstract · Sparse Winograd Convolutional neural networks on small-scale systolic arrays
The reconfigurability, energy-efficiency, and massive parallelism on FPGAs make them one of the best choices for implementing efficient deep learning accelerators. However, state-of-art implementations seldom consider the balance between high throughput of computation power and the ability of the memory subsystem to support it. In this paper, we implement an accelerator on FPGA by combining the sparse Winograd convolution, clusters of small-scale systolic arrays, and a tailored memory layout design. We also provide an analytical model analysis for the general Winograd convolution algorithm as a design reference. Experimental results on VGG16 show that it achieves very high computational resource utilization, 20x ~ 30x energy efficiency, and more than 5x speedup compared with the dense implementation.
Feng Shi, Haochen Li, Yuhe Gao, Benjamin Kuschner, Song-Chun Zhu
arXiv:1810.01973 · cs.DC, cs.AI, cs.LG · submitted Oct 3, 2018
abstract · pdf · html · submitted to FPGA 2019