A CGRA Front-End Compiler Enabling Extraction of General Control and Dedicated Operators
ASPDAC '24: Proceedings of the 29th Asia and South Pacific Design Automation Conference(2024)
摘要
Coarse-grained reconfigurable architecture (CGRA) gradually becomes an extraordinarily promising accelerator due to its flexibility and power efficiency. However, most CGRA front-end compilers focus on the innermost body of regular loops with a pure data flow. Therefore, we propose CO-Compiler, an LLVM-based CGRA front-end compiler to generate an optimized control-data flow graph (CDFG), which can handle versatile loops in C/C++, including general control flow, arbitrary nested levels, and imperfect statements. Then we extract multi-dimension memory access patterns and various dedicated operators adapting to concrete hardware functions. In addition, we analyze variable loop bounds which are settled at runtime, and realize the SoC runtime configuration of CGRA. The feasibility of our methodology is verified by a RISC-V based SoC simulation. The experimental results demonstrate that our dedicated operator extraction can reduce 43% PE resources and decrease 84% initiation interval (II) on a TRAM architecture. Furthermore, compared with state-of-the-art (SOTA) CGRA front-end compilers, CO-Compiler has the highest 88.1% success rate in CDFG generation for a wide range of benchmarks. Moreover, by using the same back-end mappers, our work can reach 78% reduction for II and 2.06× PE spatio-temporal utilization in contrast with their own front-end compilers.
更多查看译文
关键词
Front-end Compiler,Flow Data,Flow Control,Flow Graph,Signatures Of Selection,Affine Transformation,Linear Pattern,Memory Space,Loop Iteration,Iteration Count,Domain-specific Languages,Loop Level,Red Dashed Box,Concrete Conditions,Control Flow Graph,Back Edge
AI 理解论文
溯源树
样例
![](https://originalfileserver.aminer.cn/sys/aminer/pubs/mrt_preview.jpeg)
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要