Skip to main navigation Skip to search Skip to main content

Optimizing depthwise separable convolution operations on GPUs

  • Gangzhao Lu
  • , Weizhe Zhang*
  • , Zheng Wang
  • *Corresponding author for this work
  • Harbin Institute of Technology
  • University of Leeds

Research output: Contribution to journalArticlepeer-review

Abstract

The depthwise separable convolution is commonly seen in convolutional neural networks (CNNs), and is widely used to reduce the computation overhead of a standard multi-channel 2D convolution. Existing implementations of depthwise separable convolutions target accelerating model training with large batch sizes with a large number of samples to be processed at once. Such approaches are inadequate for small-batch-sized model training and the typical scenario of model inference where the model takes in a few samples at once. This article aims to bridge the gap of optimizing depthwise separable convolutions by targeting the GPU architecture. We achieve this by designing two novel algorithms to improve the column and row reuse of the convolution operation to reduce the number of memory operations performed on the width and the height dimensions of the 2D convolution. Our approach employs a dynamic tile size scheme to adaptively distribute the computational data across GPU threads to improve GPU utilization and to hide the memory access latency. We apply our approach on two GPU platforms: an NVIDIA RTX 2080Ti GPU and an embedded NVIDIA Jetson AGX Xavier GPU, and two data types: 32-bit floating point (FP32) and 8-bit integer (INT8). We compared our approach against cuDNN that is heavily tuned for the NVIDIA GPU architecture. Experimental results show that our approach delivers over 2× (up to 3×) performance improvement over cuDNN. We show that, when using a moderate batch size, our approach averagely reduces the end-to-end training time of MobileNet and EfficientNet by 9.7 and 7.3 percent respectively, and reduces the end-to-end inference time of MobileNet and EfficientNet by 12.2 and 11.6 percent respectively.

Original languageEnglish
Article number9444208
Pages (from-to)70-87
Number of pages18
JournalIEEE Transactions on Parallel and Distributed Systems
Volume33
Issue number1
DOIs
StatePublished - 1 Jan 2022
Externally publishedYes

Keywords

  • Convolution
  • Depthwise
  • GPU utilization
  • Memory optimization
  • Performance optimization
  • Pointwise

Fingerprint

Dive into the research topics of 'Optimizing depthwise separable convolution operations on GPUs'. Together they form a unique fingerprint.

Cite this