arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2408.08712cs.AR
收藏

R-HLS:一种基于区域与状态边的动态高级综合及内存消歧中间表示(IR)

R-HLS: An IR for Dynamic High-Level Synthesis and Memory Disambiguation based on Regions and State Edges

David Metz, Nico Reissmann, Magnus Själander

AI总结:

针对动态HLS现有基于控制流的IR难以挖掘块间并行性的问题,提出面向动态HLS的RVSDG方言R-HLS及分布式内存消歧优化,在平均提速10%的同时大幅降低硬件资源占用。

摘要:

动态调度硬件可为具有不规则控制流和延迟的应用提供高级综合(HLS)支持,这类应用在传统静态调度方法下表现不佳。由于动态调度硬件本质上基于数据流,因此采用一种能捕获全局数据流的中间表示(IR)来简化转换是十分有益的。当前最先进的动态HLS采用基于控制流的IR,这类IR仅在基本块层级建模数据流,需要重新挖掘块间并行性。区域化值状态依赖图(RVSDG)是一种IR,它具备两个特性:(1)利用区域将控制流建模为全局数据流的一部分;(2)使用状态边处理内存依赖。\n我们提出了R-HLS,这是一种面向动态高级综合的新型RVSDG方言。R-HLS对控制流决策、路由和内存进行显式建模,而这些内容在RVSDG中仅被抽象表示。将控制流表达为数据流的一部分,减少了为提取性能而进行复杂优化的需求,并且能够轻松转换为并行电路。此外,我们提出了一种分布式内存消歧优化方法,该方法利用内存状态边将地址生成与数据访问解耦,从而实现资源高效的内存操作乱序执行。我们的结果表明,与采用优化内存消歧的当前最先进动态HLS相比,R-HLS能有效挖掘并行性,减少执行周期数,平均提速10%。在取得这些性能提升的同时,资源利用率也显著降低,例如查找表平均减少79%,触发器平均减少22%。

英文摘要:

Dynamically scheduled hardware enables high-level synthesis (HLS) for applications with irregular control flow and latencies, which perform poorly with conventional statically scheduled approaches. Since dynamically scheduled hardware is inherently data flow based, it is beneficial to have an intermediate representation (IR) that captures the global data flow to enable easier transformations. State-of-the-art dynamic HLS utilize control flow based IRs, which model data flow only at the basic block level, requiring the rediscovery of inter-block parallelism. The Regionalized Value State Dependence Graph (RVSDG) is an IR that models (1) control flow as part of the global data flow utilizing regions and (2) memory dependencies using state edges. We propose R-HLS, a new RVSDG dialect targeted for dynamic high-level synthesis. R-HLS explicitly models control flow decisions, routing, and memory, which are only abstractly represented in the RVSDG. Expressing the control flow as part of the data flow reduces the need for complex optimizations to extract performance and enables easy conversion to parallel circuits. Furthermore, we present a distributed memory disambiguation optimization that leverages memory state edges to decouple address generation from data accesses, resulting in resource efficient out-of-program-order execution of memory operations. Our results show that R-HLS effectively exposes parallelism, resulting in fewer executed cycles and a 10% speedup on average, compared to the state-of-the-art in dynamic HLS with optimized memory disambiguation. These results are achieved with a significant reduction in resource utilization, such as a 79% reduction in lookup-tables and 22% reduction in flip-flops, on average.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑