SAVE: Sparsity-Aware Vector Engine for Accelerating DNN Training and Inference on CPUs
SAVE: Sparsity-Aware Vector Engine for Accelerating DNN Training and Inference on CPUs
复制标题
DOI:
10.1109/micro50266.2020.00070
复制
发表时间:
2020-10
期刊:
影响因子:
--
通讯作者:
Zhangxiaowen Gong;Houxiang Ji;Christopher W. Fletcher;C. Hughes;Sara S. Baghsorkhi;J. Torrellas
中科院分区:
文献类型:
--
作者:
Zhangxiaowen Gong;Houxiang Ji;Christopher W. Fletcher;C. Hughes;Sara S. Baghsorkhi;J. Torrellas
General Matrix Multiplication (GEMM) is the key operation in Deep Neural Networks (DNNs). While dense GEMM uses SIMD CPUs efficiently, sparse GEMM is much less efficient, especially at the modest levels of unstructured sparsity common in DNN inference/training. Thus, most DNNs use dense GEMM.In this paper, we propose SAVE, a novel vector engine for CPUs that efficiently skips ineffectual computation due to sparsity in dense DNN implementations. SAVE’s hardware extensions to the vector pipeline are transparent to software. SAVE accelerates FP32 and mixed-precision kernels with unstructured sparsity from both weights and activations. Further, SAVE is not DNN-specific and can potentially speed-up any vector workload with sparsity. To evaluate SAVE, we use simulations of a 28-core machine and run VGG16, ResNet-50, and GNMT, with and without pruning. With realistic sparsity, SAVE accelerates inference by 1.37x-1.68x and end-to-end training by 1.28x-1.64x.