DocumentCode :
2260598
Title :
Image convolution processing: A GPU versus FPGA comparison
Author :
Russo, Lucas M. ; Pedrino, Emerson C. ; Kato, Edilson ; Roda, Valentin Obac
Author_Institution :
Fed. Univ. of Sao Carlos - DC, Sao Carlos, Brazil
fYear :
2012
fDate :
20-23 March 2012
Firstpage :
1
Lastpage :
6
Abstract :
Convolution is one of the most important operators used in image processing. With the constant need to increase the performance in high-end applications and the rise and popularity of parallel architectures, such as GPUs and the ones implemented in FPGAs, comes the necessity to compare these architectures in order to determine which of them performs better and in what scenario. In this article, convolution was implemented in each of the aforementioned architectures with the following languages: CUDA for GPUs and Verilog for FPGAs. In addition, the same algorithms were also implemented in MATLAB, using predefined operations and in C using a regular x86 quad-core processor. Comparative performance measures, considering the execution time and the clock ratio, were taken and commented in the paper. Overall, it was possible to achieve a CUDA speedup of roughly 200× in comparison to C, 70× in comparison to Matlab and 20× in comparison to FPGA.
Keywords :
field programmable gate arrays; graphics processing units; hardware description languages; image processing; mathematics computing; parallel architectures; C program; FPGA; GPU; MATLAB; Verilog; image convolution processing; regular x86 quad-core processor; Application software; Clocks; Computer architecture; Convolution; Field programmable gate arrays; Graphics processing unit; Kernel; CUDA; Convolution; FPGA; GPU; Image processing;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Programmable Logic (SPL), 2012 VIII Southern Conference on
Conference_Location :
Bento Goncalves
Print_ISBN :
978-1-4673-0184-8
Type :
conf
DOI :
10.1109/SPL.2012.6211783
Filename :
6211783
Link To Document :
بازگشت