ECBC: Efficient Convolution via Blocked Columnizing
- 19 July 2021
- journal article
- research article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Neural Networks and Learning Systems
- Vol. 34 (1) , 433-445
Abstract
Direct convolution methods are now drawing increasing attention as they eliminate the additional storage demand required by indirect convolution algorithms (i.e., the transformed matrix generated by the im2col convolution algorithm). Nevertheless, the direct methods require special input-output tensor formatting, leading to extra time and memory consumption to get the desired data layout. In this article, we show that indirect convolution, if implemented properly, is able to achieve high computation performance with the help of highly optimized subroutines in matrix multiplication while avoid incurring substantial memory overhead. The proposed algorithm is called efficient convolution via blocked columnizing (ECBC). Inspired by the im2col convolution algorithm and the block algorithm of general matrix-to-matrix multiplication, we propose to conduct the convolution computation blockwisely. As a result, the tensor-to-matrix transformation process (e.g., the im2col operation) can also be done in a blockwise manner so that it only requires a small block of memory as small as the data block. Extensive experiments on various platforms and networks validate the effectiveness of ECBC, as well as the superiority of our proposed method against a set of widely used industrial-level convolution algorithms.Keywords
Funding Information
- National Natural Science Foundation of China (61972396)
- National Key Research and Development Program of China (2020AAA0103402)
- Strategic Priority Research Program of the Chinese Academy of Sciences (XDA27040300)
This publication has 27 references indexed in Scilit:
- Going deeper with convolutions2015
- Fully convolutional networks for semantic segmentation2015
- Very Efficient Training of Convolutional Neural Networks using Fast Fourier Transform and Overlap-and-Add2015
- Caffe2014
- Anatomy of High-Performance Many-Threaded Matrix Multiplication2014
- Restructuring the Tridiagonal and Bidiagonal QR Algorithms for PerformanceACM Transactions on Mathematical Software, 2014
- Speeding up Convolutional Neural Networks with Low Rank Expansions2014
- AUGEM2013
- Anatomy of high-performance matrix multiplicationACM Transactions on Mathematical Software, 2008
- A set of level 3 basic linear algebra subprogramsACM Transactions on Mathematical Software, 1990