On the Use of Small 2D Convolutions on GPUs

Shams A. H. Al Umairy,Alexander S. van Amesfoort,Irwan D. Setija,Martijn C. van Beurden,Henk J. Sips
DOI: https://doi.org/10.1007/978-3-642-24322-6_6
2011-01-01
Abstract:Computing many small 2D convolutions using FFTs is a basis for a large number of applications in many domains in science and engineering, among them electromagnetic diffraction modeling in physics. The GPU architecture seems to be a suitable architecture to accelerate these convolutions, but reaching high application performance requires substantial development time and non-portable optimizations. In this work, we present the techniques, performance results and considerations to accelerate small 2D convolutions using CUDA, and compare performance to a multi-threaded CPU implementation. To improve programmability and performance of applications that make heavy use of small convolutions, we argue that two improvements to software and hardware are needed: FFT libraries must be extended with a single convolution function and communication bandwidth between CPU and GPU needs to be drastically improved.
What problem does this paper attempt to address?