Low-memory GEMM-based convolution algorithms for deep neural networks
Not on the map. Why?
Abstract (arXiv)
Deep neural networks (DNNs) require very large amounts of computation both for training and for inference when deployed in the field. A common approach to implementing DNNs is to recast the most computationally expensive operations as general matrix multiplication (GEMM). However, as we demonstrate in this paper, there are a great many different ways to express DNN convolution operations using GEMM. Although different approaches all perform the same number of operations, the size of temporary data structures differs significantly. Convolution of an input matrix with dimensions C × H × W, requires O(K2CHW) additional space using the classical im2col approach. More recently memory-efficient approaches requiring just O(KCHW) auxiliary space have been proposed. We present two novel GEMM-based algorithms that require just O(MHW) and O(KW) additional space respectively, where M is the number of channels in the result of the convolution. These algorithms dramatically reduce the space overhead of DNN convolution, making it much more suitable for memory-limited embedded systems. Experimental evaluation shows that our low-memory algorithms are just as fast as the best patch-building approaches despite requiring just a fraction of the amount of additional memory. Our low-memory algorithms have excellent data locality which gives them a further edge over patch-building algorithms when multiple cores are used. As a result, our low memory algorithms often outperform the best patch-building algorithms using multiple threads.
Key facts. Cited by 6 papers in the map (data through 7 Oct 2026). First posted on arXiv 8 Sep 2017.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 1; 2022: 0; 2023: 4; 2024: 1.
6 papers.
- 2024OpenGeMM: A High-Utilization GeMM Accelerator Generator with Lightweight RISC-V Control and Tight Memory Couplingcited by 3
- 2023Im2win: Memory Efficient Convolution On SIMD Architecturescited by 2
- 2021Efficient and Generic 1D Dilated Convolution Layer for Deep Learningcited by 1
- 2023Sliding Window Sum Algorithms for Deep Neural Networkscited by 1
- 2023Photonic Accelerators for Image Segmentation in Autonomous Driving and Defect Detectioncited by 0
- 2023Accelerating Machine Learning Primitives on Commodity Hardwarecited by 0
- 2024OpenGeMM: A High-Utilization GeMM Accelerator Generator with Lightweight RISC-V Control and Tight Memory Coupling14 Nov 2024
- 2023Accelerating Machine Learning Primitives on Commodity Hardware8 Oct 2023
- 2023Photonic Accelerators for Image Segmentation in Autonomous Driving and Defect Detection28 Sep 2023
- 2023Im2win: Memory Efficient Convolution On SIMD Architectures25 Jun 2023
- 2023Sliding Window Sum Algorithms for Deep Neural Networks25 May 2023
- 2021Efficient and Generic 1D Dilated Convolution Layer for Deep Learning16 Apr 2021