Skip to main content
QUICK REVIEW

[论文解读] Work-Efficient Parallel and Incremental Graph Connectivity

Natcha Simsiri, Kanat Tangwongsan|arXiv (Cornell University)|Feb 16, 2016
Graph Theory and Algorithms参考文献 11被引用 4
一句话总结

本论文提出了首个在共享内存环境下实现的增量图连通性并行算法,具有多对数级并行深度,实现了高吞吐量的流式边处理。在20核机器上,该算法每秒可处理数亿条边,显著优于串行方法,同时在工作复杂度上保持理论最优性。

ABSTRACT

On an evolving graph that is continuously updated by a high-velocity stream of edges, how can one efficiently maintain if two vertices are connected? This is the connectivity problem, a fundamental and widely studied problem on graphs. We present the first shared-memory parallel algorithm for incremental graph connectivity that is both provably work-efficient and has polylogarithmic parallel depth. We also present a simpler algorithm with slightly worse theoretical properties, but which is easier to implement and has good practical performance. Our experiments show a throughput of hundreds of millions of edges per second on a $20$-core machine.

研究动机与目标

  • 解决在动态、高速数据流中对高吞吐量、实时图分析的需求。
  • 设计一种兼具工作高效性和低并行深度的并行增量图连通性算法。
  • 在共享内存系统中实现对边更新和连通性查询的高效批量处理。
  • 在现代多核架构上实现实际可扩展性和高吞吐量。
  • 弥合理论并行算法与流处理框架中实际部署之间的差距。

提出的方法

  • 提出一种简单的并行增量连通性算法,通过单次遍历处理边的迷你批次,使用 O(n) 内存和 O(b log n) 的工作量处理 b 条边。
  • 引入一种工作优化的算法,总工作量为 O((m + q)α(m + q, n)),与最优串行并查集性能一致。
  • 使用带有路径压缩的并行并查集变体,并结合高效的批量处理机制,以最小化冗余工作。
  • 设计一种批量更新和批量查询接口,使每个操作可在多个核心上并行处理。
  • 利用共享内存并行性,同时处理大规模的边和查询迷你批次,最大限度减少同步开销。
  • 在配备超线程技术的20核系统上,实现并评估了该简单算法的实用变体。

实验结果

研究问题

  • RQ1能否在共享内存并行环境下实现增量图连通性的算法,既具备工作高效性,又具有多对数级并行深度?
  • RQ2如何设计边更新和查询的批量并行处理机制,使其在现代多核系统上实现高效扩展?
  • RQ3在真实世界的流式工作负载中,工作高效并行增量图连通性算法的实际性能如何?
  • RQ4该算法是否能在实际中实现高吞吐量的同时,保持理论最优性?
  • RQ5是否可以设计一种混合算法,在大批次时采用线性工作,小批次时采用并查集风格性能?

主要发现

  • 所提出的算法在20核机器(共40个超线程)上实现了每秒3亿条边的处理吞吐量。
  • 在20核环境下,该算法相比单线程性能实现了8–11倍的加速,且在不同数据集上均表现出一致的可扩展性。
  • 随着批次规模增大,加速比进一步提升,原因是同步开销减少且负载均衡更优。
  • 在连通分量较多的数据集(如 rMat16)中,当线程数超过20后,吞吐量开始下降,原因是每批次的工作量不足。
  • 与不使用路径压缩的并查集相比,该实现性能高出1.01–2.5倍;与使用路径压缩的并查集相比,其开销在可接受范围内。
  • 该算法在保持理论工作最优性的同时,实际中实现了接近线性的加速比。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。