Title :
Invited paper: Using OpenCL to evaluate the efficiency of CPUS, GPUS and FPGAS for information filtering
Author :
Chen, Doris ; Singh, Deshanand
Author_Institution :
Altera Toronto Technol. Center, Toronto, ON, Canada
Abstract :
The FPGA can be a tremendously efficient computational fabric for many applications. In particular, the performance to power ratios of FPGA make them attractive solutions to solve the problem of data centers that are constrained largely by power and cooling costs. However, the complexity of the FPGA design flow requires the programmer to understand cycle-accurate details of how data is moved and transformed through the fabric. In this paper, we explore techniques that allow programmers to efficiently use FPGAs at a level of abstraction that is closer to traditional software-centric approaches by using the emerging parallel language, OpenCL. Although the field of high level synthesis has evolved greatly in the last few decades, several fundamental parts were missing from the complete software abstraction of the FPGA. These include standard and portable methods of describing HW/SW codesign, memory hierarchy, data movement and control of parallelism. We believe that OpenCL addresses all of these issues and allows for highly efficient description of FPGA designs with a higher level of abstraction. We demonstrate this premise by examining the performance of a document filtering algorithm, implemented in OpenCL and automatically compiled to a Stratix IV 530 FPGA. We show that our implementation achieves 5.5× and 5.25× better performance per watt ratios than GPU and CPU implementations, respectively.
Keywords :
computer centres; data structures; document handling; field programmable gate arrays; graphics processing units; hardware-software codesign; information filtering; logic design; open systems; parallel programming; CPU; CPU implementations; FPGA design flow; GPU; GPU implementations; HW-SW codesign; OPENCL; OpenCL; Stratix IV 530 FPGA; abstraction level; complete software ab- straction; computational fabric; cooling costs; data centers; data movement; document filtering algorithm; high level synthesis; information filtering; memory hierarchy; parallel language; portable methods; power costs; power ratios; software-centric approaches; Clocks; Field programmable gate arrays; Graphics processing unit; Instruction sets; Kernel; Parallel processing; Pipelines;
Conference_Titel :
Field Programmable Logic and Applications (FPL), 2012 22nd International Conference on
Conference_Location :
Oslo
Print_ISBN :
978-1-4673-2257-7
Electronic_ISBN :
978-1-4673-2255-3
DOI :
10.1109/FPL.2012.6339171