A Parallel Implementation of the 2D Wavelet Transform Using CUDA

Joaquín Franco,Gregorio Bernabé,Juan Fernández,Manuel E. Acacio
DOI: https://doi.org/10.1109/pdp.2009.40
2009-01-01
Abstract:There is a multicore platform that is currently concentrating an enormous attention due to its tremendous potential in terms of sustained performance: the NVIDIA Tesla boards. These cards intended for general-purpose computing on graphic processing units (GPGPUs) are used as data-parallel computing devices. They are based on the Computed Unified Device Architecture (CUDA) which is common to the latest NVIDIA GPUs. The bottom line is a multicore platform which provides an enormous potential performance benefit driven by a non-traditional programming model. In this paper we try to provide some insight into the peculiarities of CUDA in order to target scientific computing by means of a specific example. In particular, we show that the parallelization of the two-dimensional fast wavelet transform for the NVIDIA Tesla C870 achieves a speedup of 20.8 for an image size of 8192×8192, when compared with the fastest host-only version implementation using OpenMP and including the data transfers between main memory and device memory.
What problem does this paper attempt to address?