Title :
Streamroller:: automatic synthesis of prescribed throughput accelerator pipelines
Author :
Kudlur, Manjunath ; Fan, Kevin ; Mahlke, Scott
Author_Institution :
Univ. of Michigan, Ann Arbor
Abstract :
In this paper, we present a methodology for designing a pipeline of accelerators for an application. The application is modeled using sequential C language with simple stylizations. The synthesis of the accelerator pipeline involves designing loop accelerators for individual kernels, instantiating buffers for arrays used in the application, and hooking up these building blocks to form a pipeline. A compiler-based system automatically synthesizes loop accelerators for individual kernels at varying performance levels. An integer linear program formulation which simultaneously optimizes the cost of loop accelerators and the cost of memory buffers is proposed to compose the loop accelerators to form an accelerator pipeline for the whole application. Cases studies for some applications, including FMRadio and Beamformer, are presented to illustrate our design methodology. Experiments show significant cost savings are achieved through hardware sharing, while achieving the prescribed throughput requirements.
Keywords :
C language; integer programming; linear programming; pipeline processing; program compilers; program control structures; Beamf ormer; FMRadio; automatic synthesis; compiler-based system; integer linear program; loop accelerators; sequential C language; throughput accelerator pipelines; Algorithm design and analysis; Cost function; Design methodology; Embedded computing; Hardware; High level synthesis; Kernel; Linear accelerators; Pipelines; Throughput; application-specific hardware; loop accelerator; system-level synthesis;
Conference_Titel :
Hardware/Software Codesign and System Synthesis, 2006. CODES+ISSS '06. Proceedings of the 4th International Conference
Conference_Location :
Seoul
Print_ISBN :
1-59593-370-0
Electronic_ISBN :
1-59593-370-0
DOI :
10.1145/1176254.1176321