@inproceedings{d126dede5ad14d19abe414def2c357e2,
title = "Packing Sparse Convolutional Neural Networks for Efficient Systolic Array Implementations: Column Combining under Joint Optimization",
abstract = "This paper describes a novel approach of packing sparse convolutional neural networks into a denser format for efficient implementations using systolic arrays. By combining multiple sparse columns of a convolutional filter matrix into a single dense column stored in the systolic array, the utilization efficiency of the systolic array can be substantially increased (e.g., 8x) due to the increased density of nonzero weights in the resulting packed filter matrix. In combining columns, for each row, all filter weights but the one with the largest magnitude are pruned. The remaining weights are retrained to preserve high accuracy.We study the effectiveness of this joint optimization for both high utilization efficiency and classification accuracy with ASIC and FPGA designs based on efficient bit-serial implementations of multiplieraccumulators. We demonstrate that in mitigating data privacy concerns the retraining can be accomplished with only fractions of the original dataset (e.g., 10% for CIFAR-10). We present analysis and empirical evidence on the superior performance of our column combining approach against prior arts under metrics such as energy efficiency (3x) and inference latency (12x).",
keywords = "data flow architectures, joint optimization, neural networks, sparsity, systolic arrays",
author = "Kung, {H. T.} and Bradley McDanel and Zhang, {Sai Qian}",
note = "Publisher Copyright: {\textcopyright} 2019 Association for Computing Machinery.; 24th International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2019 ; Conference date: 13-04-2019 Through 17-04-2019",
year = "2019",
month = apr,
day = "4",
doi = "10.1145/3297858.3304028",
language = "English (US)",
series = "International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS",
publisher = "Association for Computing Machinery",
pages = "821--834",
booktitle = "ASPLOS 2019 - 24th International Conference on Architectural Support for Programming Languages and Operating Systems",
}