Skip to main content
QUICK REVIEW

[論文レビュー] FastSV: A Distributed-Memory Connected Component Algorithm with Fast Convergence

Yongzhe Zhang, Ariful Azad|arXiv (Cornell University)|Oct 14, 2019
Graph Theory and Algorithms参考文献 28被引用数 4
ひとこと要約

FastSV は、GraphBLAS からの簡略化された線形代数演算と、収束を加速するための新しいフッキング戦略を活用することで、大規模な無向グラフにおける連結成分の計算を高速かつスケーラブルに実行する分散メモリ向けの高性能アルゴリズムである。Cray XC40 で 262,144 コアを用いて 1340 億エッジのハイパーリンクグラフを 30 秒で処理し、前例の最先端手法 LACC より平均 2.21 倍の高速化を達成した。

ABSTRACT

This paper presents a new distributed-memory algorithm called FastSV for finding connected components in an undirected graph. Our algorithm simplifies the classic Shiloach-Vishkin algorithm and employs several novel and efficient hooking strategies for faster convergence. We map different steps of FastSV to linear algebraic operations and implement them with the help of scalable graph libraries. FastSV uses sparse operations to avoid redundant work and optimized MPI communication to avoid bottlenecks. The resultant algorithm shows high-performance and scalability as it can find the connected components of a hyperlink graph with over 134B edges in 30 seconds using 262K cores on a Cray XC40 supercomputer. FastSV outperforms the state-of-the-art algorithm by an average speedup of 2.21x (max 4.27x) on a variety of real-world graphs.

研究の動機と目的

  • 大規模グラフにおけるより高速でスケーラブルな分散メモリ向け連結成分アルゴリズムの設計。
  • 収束速度を維持したまま不要な手順を排除することで、Shiloach-Vishkin アルゴリズムの簡略化。
  • スパース演算の動的利用と効率的な MPI 通信によるパフォーマンス最適化。
  • 数10万コアを超えるスパコンプラットフォームにおける高いスケーラビリティの達成。
  • LACC や ParConnect といった既存の最先端アルゴリズムを、実行時間とスケーラビリティの両面で上回ること。

提案手法

  • FastSV は、条件付きツリーのフッキングとショートカット処理の2つのコアステップに限定することで、Shiloach-Vishkin アルゴリズムを簡略化する。
  • これらのステップを GraphBLAS 演算にマッピングし、効率性のためスパース行列-スカラーベクトル乗算 (SpMV) とスパース行列-スパースベクトル乗算 (SpMSpV) を使用する。
  • 親親ノードベクトルの変化に基づいて、SpMV と SpMSpV の間で動的に選択することで、冗長な計算を削減する。
  • 分散メモリ実行におけるボトルネックを回避するため、最適化された MPI 通信パターンを採用する。
  • 収束を加速するための新しいフッキング戦略を導入し、必要な反復回数を削減する。
  • 実装では分散メモリプラットフォーム用に CombBLAS を使用し、共有メモリサポートのため SuiteSparse:GraphBLAS と統合する。

実験結果

リサーチクエスチョン

  • RQ1簡略化された Shiloach-Vishkin アルゴリズムは、分散メモリシステムにおいて、より速い収束と優れたパフォーマンスを達成できるか?
  • RQ2スケールに応じた連結成分アルゴリズムの表現と最適化に、GraphBLAS 演算を効果的に活用できるか?
  • RQ3動的演算選択(SpMV 対 SpMSpV)と通信最適化が、大規模グラフにおけるパフォーマンスに与える影響は何か?
  • RQ4新しいフッキング戦略は、正しさやスケーラビリティを損なわずに反復回数を削減できるか?
  • RQ5実世界および合成グラフにおいて、FastSV は現行の最先端手法 LACC と比較して、パフォーマンスとスケーラビリティの両面で優れているか?

主な発見

  • FastSV は、Cray XC40 スーパーコンピュータ上で 262,144 コアを用いて、1340 億エッジのハイパーリンクグラフの連結成分をわずか 30 秒で計算した。
  • さまざまな実世界グラフにおいて、FastSV は前例の最先端手法 LACC より平均 2.21 倍(最大 4.27 倍)の高速化を達成した。
  • 動的 SpMV/SpMSpV 選択の活用により、特に高密度グラフでは後続の反復において実行時間が顕著に短縮された。
  • 簡素化された論理構造と最適化された通信により、無条件のフッキングを削除したにもかかわらず、LACC を上回る高いスケーラビリティを実現した。
  • アルゴリズムは汎用的かつポータブルであり、分散メモリ(CombBLAS)と共有メモリ(SuiteSparse:GraphBLAS)の両方のプラットフォームをサポートする。
  • FastSV は最大 32.7 億頂点および 1249 億エッジを有するグラフにおいても優れたパフォーマンスを示し、エクサスケールデータワークロードへの対応可能性を確認した。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。