Gunrock: A High-Performance Graph Processing Library on the GPU

Gunrock: A High-Performance Graph Processing Library on the GPU
复制标题

DOI:
10.1145/3016078.2851145
复制
发表时间:
2016-08-01
影响因子:
--
通讯作者:
Owens, John D.
Owens, John D.
中科院分区:
其他
文献类型:
--
作者:
Wang, Yangzihao;Davidson, Andrew;Owens, John D.

文献摘要

被引文献

相似文献

对于GPU上的大规模图形分析,数据访问/控制流的不规则性和GPU编程的复杂性一直是开发可编程高性能图形库的两个重大挑战。我们针对GPU的高级批量同步图形处理系统“GunRock”采用了一种新的方法来抽象GPU图形分析:GunRock不是围绕计算设计抽象,而是实现了以顶点或边边界上的操作为中心的新的以数据为中心的抽象。GunRock通过将高性能GPU计算基元和优化策略与高级编程模型相结合,实现了性能和表现力之间的平衡,该模型允许程序员以较小的代码量和最少的GPU编程知识快速开发新的图形基元。我们在五个图形基元(BFS、BC、SSSP、CC和PageRank)上对GunRock进行了评估,结果表明,GunRock的平均加速比至少比Boost和PowerGraph高一个数量级,性能与最快的GPU硬连接基元相当,并且比任何其他GPU高级图形库都要好。
For large-scale graph analytics on the GPU, the irregularity of data access/control flow and the complexity of programming GPUs have been two significant challenges for developing a programmable high-performance graph library. "Gunrock," our high-level bulk-synchronous graph-processing system targeting the GPU, takes a new approach to abstracting GPU graph analytics: rather than designing an abstraction around computation, Gunrock instead implements a novel data-centric abstraction centered on operations on a vertex or edge frontier. Gunrock achieves a balance between performance and expressiveness by coupling high-performance GPU computing primitives and optimization strategies with a high-level programming model that allows programmers to quickly develop new graph primitives with small code size and minimal GPU programming knowledge. We evaluate Gunrock on five graph primitives (BFS, BC, SSSP, CC, and PageRank) and show that Gunrock has on average at least an order of magnitude speedup over Boost and PowerGraph, comparable performance to the fastest GPU hardwired primitives, and better performance than any other GPU high-level graph library.