DocumentCode :
1165673
Title :
Combining Data Reuse With Data-Level Parallelization for FPGA-Targeted Hardware Compilation: A Geometric Programming Framework
Author :
Liu, Qiang ; Constantinides, George A. ; Masselos, Konstantinos ; Cheung, PeterY K.
Author_Institution :
Dept. of Electr. & Electron. Eng., Imperial Coll. London, London
Volume :
28
Issue :
3
fYear :
2009
fDate :
3/1/2009 12:00:00 AM
Firstpage :
305
Lastpage :
315
Abstract :
A nonlinear optimization framework is proposed in this paper to automate exploration of the design space consisting of data-reuse (buffering) decisions and loop-level parallelization, in the context of field-programmable-gate-array-targeted hardware compilation. Buffering frequently accessed data in on-chip memories can reduce off-chip memory accesses and open avenues for parallelization. However, the exploitation of both data reuse and parallelization is limited by the memory resources available on-chip. As a result, considering these two problems separately, e.g., first exploring data reuse and then exploring data-level parallelization, based on the data-reuse options determined in the first step, may not yield the performance-optimal designs for limited on-chip memory resources. We consider both problems at the same time, exposing the dependence between the two. We show that this combined problem can be formulated as a nonlinear program and further show that efficient solution techniques exist for this problem, based on recent advances in optimization of so-called geometric programming problems. The results from applying this framework to several real benchmarks implemented on a Xilinx device demonstrate that given different constraints on on-chip memory utilization, the corresponding performance-optimal designs are automatically determined by the framework. We have also implemented designs determined by a two-stage optimization method that first explores data reuse and then explores parallelization on the same platform, and by comparison, the performance-optimal designs proposed by our framework are faster than the designs determined by the two-stage method by up to 5.7 times.
Keywords :
buffer storage; field programmable gate arrays; geometric programming; parallel memories; random-access storage; FPGA-targeted hardware compilation; Xilinx device; buffering; data reuse; data-level parallelization; field-programmable-gate-arrays; geometric programming framework; loop-level parallelization; nonlinear optimization framework; off-chip memory accesses; on-chip memory; Data-level parallelization; data reuse; field-programmable gate-array (FPGA) hardware compilation; geometric programming; optimization;
fLanguage :
English
Journal_Title :
Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on
Publisher :
ieee
ISSN :
0278-0070
Type :
jour
DOI :
10.1109/TCAD.2009.2013541
Filename :
4785342
Link To Document :
بازگشت