[论文解读] An Efficient Graph Accelerator with Parallel Data Conflict Management
本文提出了一种面向图计算的FPGA加速器,通过引入度感知并行累加器,实现了冲突顶点更新的并行执行,显著减少了原子操作中的序列化瓶颈。该加速器平均达到2.36 GTEPS的吞吐量,相较于最先进的ForeGraph,最高实现3.14倍的加速比,其优势源于BFS、PageRank和WCC等算法中原子更新的增量性和单向性特征。
Graph-specific computing with the support of dedicated accelerator has greatly boosted the graph processing in both efficiency and energy. Nevertheless, their data conflict management is still sequential in essential when some vertex needs a large number of conflicting updates at the same time, leading to prohibitive performance degradation. This is particularly true for processing natural graphs. In this paper, we have the insight that the atomic operations for the vertex updating of many graph algorithms (e.g., BFS, PageRank and WCC) are typically incremental and simplex. This hence allows us to parallelize the conflicting vertex updates in an accumulative manner. We architect a novel graphspecific accelerator that can simultaneously process atomic vertex updates for massive parallelism on the conflicting data access while ensuring the correctness. A parallel accumulator is designed to remove the serialization in atomic protection for conflicting vertex updates through merging their results in parallel. Our implementation on Xilinx Virtex UltraScale+ XCVU9P with a wide variety of typical graph algorithms shows that our accelerator achieves an average throughput by 2.36 GTEPS as well as up to 3.14x performance speedup in comparison with state-of-the-art ForeGraph (with single-chip version).
研究动机与目标
- 解决图处理中因冲突顶点更新导致的原子操作序列化性能瓶颈问题。
- 探究BFS、PageRank、WCC等常见图算法中的原子操作是否可因具备增量性和单向性特征而实现并行化。
- 设计一种支持大规模顶点更新并行性的图加速器,同时在数据冲突下保证正确性。
- 通过自适应并行化和基于源的图划分,优化低度和高度顶点的内存访问。
- 通过减少序列化开销和提升吞吐量,超越现有加速器(如ForeGraph)的性能表现。
提出的方法
- 设计一种并行累加器,可并行合并多个冲突原子更新的结果,从而消除对序列化处理的依赖。
- 实现一种基于度的调度策略,对低度顶点并行处理,同时限制高度顶点的顶点级并行度,以减少同步开销。
- 集成高吞吐量片上内存,并引入重排机制,以均衡分布内存请求并实现乱序处理,提升吞吐量。
- 应用基于源的图划分方法,降低片上内存压力,提升内存效率,尤其适用于平均度较低的图。
- 采用流水线架构,在多个图迭代中维持高吞吐量,同时保证数据一致性。
- 利用关键图算法中原子操作的可交换性和可结合性,实现安全高效的并行执行。
实验结果
研究问题
- RQ1由于BFS、PageRank和WCC等常见图算法具有增量性和单向性特征,其原子操作是否可安全并行化?
- RQ2如何设计一种并行累加器,以在不牺牲正确性或引入序列化的情况下管理冲突顶点更新?
- RQ3顶点度对图加速器中并行数据冲突管理的设计有何影响?
- RQ4基于源的图划分对内存访问效率和整体加速器性能有何影响?
- RQ5所提出的加速器在多大程度上可超越现有最先进的FPGA图加速器(如ForeGraph)?
主要发现
- 所提出的加速器在广泛图工作负载上实现了平均2.36 GTEPS的吞吐量。
- 在真实世界图上,该加速器相较于最先进的ForeGraph(单芯片版本)最高实现3.14倍的加速比。
- 并行累加器通过支持冲突更新的并发处理,显著降低了序列化开销,从而大幅提升性能。
- 将图划分为4个部分时,Wiki图的性能最高下降61%,凸显了对内存容量和访问模式的敏感性。
- 通过有效的内存请求重排和划分,将内存请求量减少至原始水平的≤10%。
- 度感知设计在高阶顶点上有效平衡了并行性与同步开销,显著提升了整体系统效率。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。