IMAGE PROCESSING WITH CUDA

This thesis puts to the test the power of parallel computing on the GPU against the massive computations needed in image processing of large images. The GPU has long been used to accelerate 3D applications. With the advent of high level programmable interfaces, programming to the GPU is simplied and is being used to accelerate a wider class of applications. More specifically, this thesis focuses on CUDA as its parallel programming platform. This thesis explores on the possible performance gains that can be achieved by using CUDA on image processing. Two well known algorithms for image blurring and edge detection is used in the experiment. Benchmarks are done between the parallel implementation and the sequential implementation.

[1]  Pat Hanrahan,et al.  Ray tracing on programmable graphics hardware , 2002, SIGGRAPH Courses.

[2]  Rüdiger Westermann,et al.  Linear algebra operators for GPU implementation of numerical algorithms , 2003, SIGGRAPH Courses.

[3]  Nabil H. Mustafa,et al.  Hardware-assisted computation of depth contours , 2002, SODA '02.

[4]  Anselmo Lastra,et al.  Simulation of cloud dynamics on graphics hardware , 2003, HWWS '03.

[5]  Erik Lindholm,et al.  NVIDIA Tesla: A Unified Graphics and Computing Architecture , 2008, IEEE Micro.

[6]  Dinesh Manocha,et al.  Fast computation of generalized Voronoi diagrams using graphics hardware , 1999, SIGGRAPH.

[7]  Kenneth A. Ross,et al.  Implementing database operations using SIMD instructions , 2002, SIGMOD '02.

[8]  Greg Humphreys,et al.  A multigrid solver for boundary value problems using programmable graphics hardware , 2003, HWWS '03.

[9]  Michael D. McCool,et al.  Performance evaluation of GPUs using the RapidMind development platform , 2006, SC.

[10]  Nabil H. Mustafa,et al.  Streaming Geometric Optimization Using Graphics Hardware , 2003, ESA.

[11]  Bingsheng He,et al.  Efficient gather and scatter operations on graphics processors , 2007, Proceedings of the 2007 ACM/IEEE Conference on Supercomputing (SC '07).

[12]  Divyakant Agrawal,et al.  Hardware Acceleration in Commercial Databases: A Case Study of Spatial Operations , 2004, VLDB.

[13]  Bingsheng He,et al.  Parallel Data Mining on Graphics Processors , 2011 .

[14]  John C. Hart,et al.  The ray engine , 2002, HWWS '02.

[15]  Lei Yang,et al.  An improved Sobel edge detection , 2010, 2010 3rd International Conference on Computer Science and Information Technology.

[16]  Kevin Skadron,et al.  Scalable parallel programming , 2008, 2008 IEEE Hot Chips 20 Symposium (HCS).

[17]  Mark S. Nixon,et al.  Feature Extraction and Image Processing , 2002 .

[18]  David Tarditi,et al.  Accelerator: using data parallelism to program GPUs for general-purpose uses , 2006, ASPLOS XII.

[19]  이주석,et al.  Tesla GPU Computing , 2010 .

[20]  Anselmo Lastra,et al.  Physically-based visual simulation on graphics hardware , 2002, HWWS '02.

[21]  Dinesh Manocha,et al.  Fast computation of database operations using graphics processors , 2004, SIGMOD '04.

[22]  Divyakant Agrawal,et al.  Hardware acceleration for spatial selections and joins , 2003, SIGMOD '03.