Accelerating convolutional neural network by exploiting sparsity on GPUs

Weizhi Xu, Yintai Sun, fhengyu Fan, Hui Yu, Xin Fu
9/22/2019
cs.DC

No confident code implementation found for this paper.

Abstract

Convolutional neural network (CNN) is an important deep learning method. The convolution operation takes a large proportion of the total execution time for CNN. Feature maps for convolution operation are usually sparse. Multiplications and additions for zero values in the feature map are useless for convolution results. In addition, the convolution layer and pooling layer are computed separately in traditional methods, which leads to frequent data transfer between CPU and GPU. Based on these observations, we propose two new methods to accelerate CNN on GPUs. The first method focuses on accelerating convolution operation and reducing the calculation of zero values. The second method combines the operations of one convolution layer with the following pooling layer to effectively reduce traffic between CPU and GPU. For the first method, we extract some convolution layers from LeNet, AlexNet, and GoogLeNet, and can achieve up to 3.6X speedup over cuDNN for the single-layer convolution on GPU. Experiment on VGG-19 achieves 3.5X speedup over cuDNN for convolution operation on average. For the second method, the experiment on VGG-19 achieves 4.3X speedup over cuDNN on average.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. Any repos shown below are weak matches — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{xu2019accelerating,
  title  = {Accelerating convolutional neural network by exploiting sparsity on GPUs},
  author = {Weizhi Xu and Yintai Sun and fhengyu Fan and Hui Yu and Xin Fu},
  year   = {2019},
  eprint = {1909.09927},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/1909.09927}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/1909.09927.svg)](https://codeofpaper.com/paper/1909.09927)

Discussion