Summary: | The demand of processing a huge amount of data within a limited time and the developing of computing capability of Graphic Process Unit (GPU) lead us to the world of parallel computing on General Purpose GPU (GPGPU). Because of the exposed parallelism, GPGPU could assign processing tasks to multiple threads and execute these threads simultaneously. This feature could speedup heavy data com- putation to a level, which we would never imagine in the past. In this thesis, we use a very important algorithm in image processing(DCT/IDCT) to present parallel computing on GPGPU, and implemented it both on the sin- gle GPU and multi-GPU system. The parallel computing technology is based on Compute Unified Device Architecture (CUDA) and OpenMP. Furthermore, some optimization strategies are discussed in the thesis and results will be compared. The final results show that the parallel computing could accelerate the processing from dozens of times to almost five hundreds of times. The potential factors that might affect the performance are also discussed. Therefore, it is more effective to use GPGPU to do parallel computing, and it is more power efficient.
|