Loading…
Efficient scatter-based kernel superposition on GPU
Kernel superposition, where an image is convolved with a spatially varying kernel, is commonly used in optics, astronomy, medical imaging and radiotherapy. This operation is computationally expensive and generally cannot benefit from the mathematical simplifications available for true convolutions....
Saved in:
Published in: | Journal of parallel and distributed computing 2015-10, Vol.84, p.15-23 |
---|---|
Main Authors: | , , |
Format: | Article |
Language: | English |
Subjects: | |
Citations: | Items that this one cites Items that cite this one |
Online Access: | Get full text |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Summary: | Kernel superposition, where an image is convolved with a spatially varying kernel, is commonly used in optics, astronomy, medical imaging and radiotherapy. This operation is computationally expensive and generally cannot benefit from the mathematical simplifications available for true convolutions. We systematically evaluated the performance of a number of implementations of a 2D Gaussian kernel superposition on several graphics processing units of two recent architectures. The 2D Gaussian kernel was used because of its importance in real-life applications and representativeness of expensive-to-evaluate, separable kernels. The implementations were based both on the gather approach found in the literature and on the scatter approach presented here. Our results show that, over a range of kernel sizes, the scatter approach delivers speedups of 2.1–14.5 or 1.3–4.9 times, depending on the architecture. These numbers were further improved to 4.8–28.5 and 3.7–16.8 times, respectively, when only “exact” implementations were compared. Speedups similar to those presented are expected for other separable kernels and, we argue, will also remain applicable for problems of higher dimensionality.
•We investigate the performance of a 2D Gaussian variable kernel convolution on GPU.•We produce several implementations, both conventional, gather-based, and new, scatter-based.•The performance of the implementations is evaluated on several GPUs of different architecture.•The scatter-based approach achieves considerably better performance for all GPUs and kernel sizes.•The results should extend to any similar kernel and to problems of higher dimensionality. |
---|---|
ISSN: | 0743-7315 1096-0848 |
DOI: | 10.1016/j.jpdc.2015.07.003 |