[论文解读] An Adaptive Parallel Algorithm for Computing Connectivity.
本文提出一种自适应的混合并行算法,用于在大规模无向图中计算连通分量,通过基于图拓扑的动态路由策略在Shiloach-Vishkin与基于并行BFS的算法之间进行切换。通过分析度分布以预测最优方法,该算法在先前工作的基础上实现了24倍的加速,在32,000个核心上处理一个超过500亿条边的宏基因组图仅需215秒。
We present an efficient distributed memory parallel algorithm for computing connected components in undirected graphs based on Shiloach-Vishkin's PRAM approach. We discuss multiple optimization techniques that reduce communication volume as well as balance the load to improve the performance of the algorithm in practice. We also note that the efficiency of parallel graph connectivity algorithm depends on the underlying graph topology. Particularly for short diameter graph components, we observe that parallel breadth first search method offers better performance. However, running parallel BFS is not efficient for computing large diameter components or large number of small components. To address this challenge, we employ a heuristic that allows the algorithm to quickly predict the type of the network by computing the degree distribution and follow the optimal hybrid route. Using large graphs with diverse topologies from domains including metagenomics, web crawl, social graph and road networks, we show that our hybrid implementation is efficient and scalable for each of the graph types. Our approach achieves a runtime of 215 seconds using 32K cores of Cray XC30 for a metagenomic graph with over 50 billion edges. When compared against the previous state-of-the-art method, we see performance improvements up to 24x.
研究动机与目标
- 解决因不同图拓扑下算法选择不当时导致的并行图连通性算法性能瓶颈。
- 减少分布式内存系统中的通信量并改善负载均衡,以提升可扩展性。
- 开发一种启发式方法,基于度分布预测图分量更适合使用Shiloach-Vishkin还是并行BFS。
- 在包括宏基因组学、网络爬虫、社交网络和道路网络在内的多样化真实世界图工作负载中,实现高性能与可扩展性。
提出的方法
- 采用Shiloach-Vishkin PRAM算法作为在分布式内存环境中进行并行连通性计算的基线。
- 引入一种拓扑感知启发式方法,通过计算度分布来分类图分量,并选择最优的连通性算法。
- 基于预测的性能特征,在分量级别动态切换Shiloach-Vishkin与并行BFS。
- 通过算法优化和数据分布策略,减少通信量并改善负载均衡。
- 实现混合执行:短直径分量使用并行BFS,长直径或小分量簇则使用Shiloach-Vishkin。
- 利用大规模分布式系统(如Cray XC30)在边数超过500亿的图上评估性能。
实验结果
研究问题
- RQ1如何根据图拓扑动态选择Shiloach-Vishkin与并行BFS进行图连通性计算?
- RQ2哪些启发式方法能够准确预测不同图分量的最优连通性算法?
- RQ3通信量和负载不平衡在多大程度上影响并行连通性算法的性能?
- RQ4混合方法是否能在包括真实世界图类型在内的多种图类型上超越单独使用Shiloach-Vishkin与并行BFS的性能?
主要发现
- 该混合算法在Cray XC30系统的32,000个核心上处理一个边数超过500亿的宏基因组图时,运行时间仅为215秒。
- 与先前最先进的方法相比,该算法性能最高可提升24倍。
- 对于短直径分量,并行BFS优于Shiloach-Vishkin;而对于长直径或小分量,Shiloach-Vishkin更为高效。
- 基于度分布的启发式方法能够准确预测最优算法,从而减少因选择不当带来的运行时开销。
- 该混合方法在包括宏基因组学、网络爬虫、社交网络和道路网络在内的多样化图拓扑中均表现出高效的可扩展性。
- 通过算法优化,显著减少了通信量和负载不平衡,从而提升了整体性能。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。