arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1908.09378cs.DScs.DC
收藏

面向GPU架构的带快速更新的并行优先级队列

A parallel priority queue with fast updates for GPU architectures

Kyle Berney, John Iacono, Ben Karsin, Nodari Sitchinava

AI总结:

提出一种面向GPU的并行桶堆数据结构,支持快速批量更新,用于高效解决大直径图的单源最短路径问题,在NVIDIA GPU上比现有最先进实现快达5.4倍。

摘要:

单源最短路径(SSSP)问题是一个被广泛研究的问题,在许多应用中都有使用。在并行计算环境中,一个同时实现$o(n)$并行深度的工作高效算法一直难以实现。或者,已经开发了多种利用特定图类特定属性的方法。在图形处理单元(GPU)上,当前最先进的SSSP算法是Delta-stepping算法的实现,该算法对于具有大直径的图表现不佳。本工作的主要贡献是提供一种专为GPU设计、能高效处理此类图的算法。我们提出了并行桶堆(parallel bucket heap),这是一种为现代GPU架构调整的并行缓存高效数据结构,支持标准优先级队列操作以及批量更新。我们在几个著名的计算模型中分析了该结构,并表明它既提供了最优并行性,又具有缓存高效性。我们实现了并行桶堆,并将其用于Dijkstra算法的并行变体来解决SSSP问题。实验结果表明,对于足够大、高直径的稠密图,我们在NVIDIA RTX 2080 Ti和Quadro M4000上分别比当前最先进的SSSP实现快最多2.8倍和5.4倍。

英文摘要:

The single-source shortest path (SSSP) problem is a well-studied problem that is used in many applications. In the parallel setting, a work-efficient algorithm that additionally attains $o(n)$ parallel depth has been elusive. Alternatively, various approaches have been developed that take advantage of specific properties of a particular class of graphs. On a graphics processing unit (GPU), the current state-of-the-art SSSP algorithms are implementations of the Delta-stepping algorithm, which does not perform well for graphs with large diameters. The main contribution of this work is to provide an algorithm designed for GPUs that runs efficiently for such graphs. We present the parallel bucket heap, a parallel cache-efficient data structure adapted for modern GPU architectures that supports standard priority queue operations, as well as bulk update. We analyze the structure in several well-known computational models and show that it provides both optimal parallelism and is cache-efficient. We implement the parallel bucket heap and use it in a parallel variant of Dijkstra's algorithm to solve the SSSP problem. Experimental results indicate that, for sufficiently large, dense graphs with high diameter, we outperform the current state-of-the-art SSSP implementations on an NVIDIA RTX 2080 Ti and Quadro M4000 by up to a factor of 2.8 and 5.4, respectively.

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

↑