DocumentCode :
1927765
Title :
OpenMP extensions for FPGA accelerators
Author :
Cabrera, Daniel ; Martorell, Xavier ; Gaydadjiev, Georgi ; Ayguade, Eduard ; Jiménez-González, Daniel
fYear :
2009
fDate :
20-23 July 2009
Firstpage :
17
Lastpage :
24
Abstract :
Reconfigurable computing is one of the paths to explore towards low-power supercomputing. However, programming these reconfigurable devices is not an easy task and still requires significant research and development efforts to make it really productive. In addition, the use of these devices as accelerators in multicore, SMPs and ccNUMA architectures adds an additional level of programming complexity in order to specify the offloading of tasks to reconfigurable devices and the interoperability with current shared-memory programming paradigms such as openMP. This paper presents extensions to openMP 3.0 that try to address this second challenge and an implementation in a prototype runtime system. With these extensions the programmer can easily express the offloading of an already existing reconfigurable binary code (bitstream) hiding all the complexities related with device configuration, bitstream loading, data arrangement and movement to the device memory. Our current prototype implementation targets the SGI Altix systems with RASC blades (based on the Virtex 4 FPGA). We analyze the overheads introduced in this implementation and propose a hybrid host/device operational mode to hide some of these overheads, significantly improving the performance of the applications. A complete evaluation of the system is done with a matrix multiplication kernel, including an estimation considering different FPGA frequencies.
Keywords :
application program interfaces; binary codes; field programmable gate arrays; hardware description languages; matrix multiplication; message passing; open systems; parallel programming; shared memory systems; FPGA accelerator; HDL; RASC blade; SGI Altix system; SMP paradigm; bitstream loading; ccNUMA architecture; data arrangement; hardware description language; hybrid host/device operational mode; interoperability; matrix multiplication kernel; openMP 3.0 extension; prototype runtime system; reconfigurable binary code; reconfigurable computing; reconfigurable device; shared-memory programming paradigm; Acceleration; Binary codes; Blades; Computer architecture; Field programmable gate arrays; Frequency estimation; Multicore processing; Programming profession; Prototypes; Research and development;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Systems, Architectures, Modeling, and Simulation, 2009. SAMOS '09. International Symposium on
Conference_Location :
Samos
Print_ISBN :
978-1-4244-4502-8
Type :
conf
DOI :
10.1109/ICSAMOS.2009.5289237
Filename :
5289237
Link To Document :
بازگشت