Title :
OpenRCL: Low-Power High-Performance Computing with Reconfigurable Devices
Author :
Lin, Mingjie ; Lebedev, Ilia ; Wawrzynek, John
Author_Institution :
Dept. of Electr. Eng. & Comput. Sci., Univ. of California at Berkeley, Berkeley, CA, USA
fDate :
Aug. 31 2010-Sept. 2 2010
Abstract :
This work presents the Open Reconfigurable Computing Language (OpenRCL) system designed to enable low-power high-performance reconfigurable computing with imperative programming language such as C/C++. The key idea is to expose the FPGA platform as a compiler target for applications expressed in the OpenCL paradigm. To this end, we present a combination of low-level virtual machine instruction set, execution model, many-core architecture, and associated compiler to achieve high performance and power efficiency by exploiting the FPGA´s distributed memories and abundant hardware structures (such as DSP blocks, long carry-chains, and registers). Our resulting OpenRCL system not only allows programmers to easily express parallelism through the API defined in the OpenCL standard but also supports coarse-grain multithreading and dataflow-style fine-grain threading while permitting bit-level resource control. An OpenRCL prototype machine with 30 processing nodes was implemented using a Virtex-5 (XCV5LX155T-2) FPGA. For the well-known Parallel Prefix Sum (Scan) problem, comparing the runtime of the same problem on a GeForce 9400m using the OpenCL SDK from Apple Inc., the OpenRCL machine demonstrates comparable performance with a 5x reduction in core power consumption.
Keywords :
field programmable gate arrays; multi-threading; programming language semantics; FPGA distributed memory; Open Reconfigurable Computing Language; OpenCL standard; OpenRCL prototype machine; Virtex-5 FPGA platform; bit-level resource control; coarse-grain multithreading; core power consumption; dataflow-style fine-grain threading; hardware structure; high performance reconfigurable computing; low level virtual machine instruction set; low-power high-performance computing; many-core architecture; parallel prefix sum; programming language; reconfigurable device; FPGA; compiler; computing; opencl;
Conference_Titel :
Field Programmable Logic and Applications (FPL), 2010 International Conference on
Conference_Location :
Milano
Print_ISBN :
978-1-4244-7842-2
DOI :
10.1109/FPL.2010.93