Towards Effective Depthwise Convolutions on ARMv8 Architecture

06/24/2022
by   Ruochen Hao, et al.
0

Depthwise convolutions are widely used in lightweight convolutional neural networks (CNNs). The performance of depthwise convolutions is mainly bounded by the memory access rather than the arithmetic operations for classic convolutions so that direct algorithms are often more efficient than indirect ones (matrix multiplication-, Winograd-, and FFT-based convolutions) with additional memory accesses. However, the existing direct implementations of depthwise convolutions on ARMv8 architectures feature a bad trade-off between register-level reuse of different tensors, which usually leads to sub-optimal performance. In this paper, we propose new direct implementations of depthwise convolutions by means of implicit padding, register tiling, etc., which contain forward propagation, backward propagation and weight gradient update procedures. Compared to the existing ones, our new implementations can incur much less communication overhead between registers and cache. Experimental results on two ARMv8 CPUs show that our implementations can averagely deliver 4.88x and 16.4x performance improvement over the existing direct ones in open source libraries and matrix multiplications-based ones in Pytorch, respectively.

READ FULL TEXT

page 1

page 2

page 3

page 4

page 6

page 7

page 8

page 10

research
09/20/2018

FFT Convolutions are Faster than Winograd on Modern CPUs, Here is Why

Winograd-based convolution has quickly gained traction as a preferred ap...
research
01/03/2020

High Performance Depthwise and Pointwise Convolutions on Mobile Devices

Lightweight convolutional neural networks (e.g., MobileNets) are specifi...
research
06/17/2020

Optimizing Grouped Convolutions on Edge Devices

When deploying a deep neural network on constrained hardware, it is poss...
research
03/30/2023

Hybrid Dealiasing of Complex Convolutions

Efficient algorithms for computing linear convolutions based on the fast...
research
07/03/2019

The Indirect Convolution Algorithm

Deep learning frameworks commonly implement convolution operators with G...
research
04/18/2022

Communication Bounds for Convolutional Neural Networks

Convolutional neural networks (CNNs) are important in a wide variety of ...

Please sign up or login with your details

Forgot password? Click here to reset