We develop and extensively evaluate highly scalable distributed-memory algorithms for computing minimum spanning trees (MSTs). At the heart of our solutions is a scalable variant of Boruvka's algorithm. For partitioned graphs with many local edges, we improve this with an effective form of contracting local parts of the graph during a preprocessing step. We also adapt the filtering concept of the best practical sequential algorithm to develop a massively parallel Filter-Boruvka algorithm that is very useful for graphs with poor locality and high average degree. Our experiments indicate that our algorithms scale well up to at least 65 536 cores and are up to 800 times faster than previous distributed MST algorithms.
翻译:我们开发并全面评估了用于计算最小生成树(MST)的高可扩展分布式内存算法。我们解决方案的核心是Boruvka算法的一种可扩展变体。对于包含大量局部边的分区图,我们通过在预处理阶段对图局部部分进行有效收缩来改进该算法。此外,我们借鉴最佳实际串行算法的过滤概念,开发了一种大规模并行Filter-Boruvka算法,该算法对于局部性差且平均度数高的图非常有效。实验表明,我们的算法在至少65,536个核心上具有良好的可扩展性,并且比之前的分布式MST算法快高达800倍。