[論文レビュー] High-Performance Massive Subgraph Counting using Pipelined Adaptive-Group Communication
本稿では、カラーコーディングを用いた大規模部分グラフカウントのための高性能でパイプライン化された適応的グループ通信フレームワークを提案する。分散システム全体にわたる効率的な並列処理を可能にする。パイプライン化された通信、細粒度のタスク分割、メモリ最適化された中間データ処理を統合することで、大規模なテンプレート(12〜15頂点)および数十億エッジのグラフにおいて、最先端のMPI-Fasciaと比較して5倍の高速化とピークメモリ使用量の2倍の低減を達成した。
Subgraph counting aims to count the number of occurrences of a subgraph T (aka as a template) in a given graph G. The basic problem has found applications in diverse domains. The problem is known to be computationally challenging - the complexity grows both as a function of T and G. Recent applications have motivated solving such problems on massive networks with billions of vertices. In this chapter, we study the subgraph counting problem from a parallel computing perspective. We discuss efficient parallel algorithms for approximately resolving subgraph counting problems by using the color-coding technique. We then present several system-level strategies to substantially improve the overall performance of the algorithm in massive subgraph counting problems. We propose: 1) a novel pipelined Adaptive-Group communication pattern to improve inter-node scalability, 2) a fine-grained pipeline design to effectively reduce the memory space of intermediate results, 3) partitioning neighbor lists of subgraph vertices to achieve better thread concurrency and workload balance. Experimentation on an Intel Xeon E5 cluster shows that our implementation achieves 5x speedup of performance compared to the state-of-the-art work while reduces the peak memory utilization by a factor of 2 on large templates of 12 to 15 vertices and input graphs of 2 to 5 billions of edges.
研究の動機と目的
- 大規模なグラフに複雑で高頂点数のテンプレートを適用する際の、既存の並列部分グラフカウントツールのスケーラビリティの限界を解消すること。
- 部分グラフカウント処理における不規則でスパースなグラフワークロードにおいて、通信のボトル neck、負荷の不均衡、および高メモリ使用量を克服すること。
- 数十億エッジのグラフ上で、木構造のテンプレート(最大15頂点)を対象としたカラーコーディングベースの部分グラフカウントを効率的に並列実行可能にすること。
- 分散部分グラフカウントワークロードにおけるピークメモリ使用量の低減と、ノード間通信の効率化を実現すること。
提案手法
- 計算と通信を重ねて実行することで、無駄な待機時間を削減し、ノード間のスケーラビリティを向上させる、新しいパイプライン化された適応的グループ通信パターンを導入する。
- 各ノード内でのスレッドレベルの負荷をバランスさせるために、隣接リストの細粒度のタスク分割を採用する。
- パイプライン段階を重ねて処理することで、中間データの分割と処理のオーバーラップを実現し、ピークメモリ使用量を低減する。
- テンプレートサイズに応じて通信モードを動的に切り替えることで、計算量と通信量の比率に適応する。
- 近似部分グラフカウントにカラーコーディング技術を活用し、木構造のテンプレート(treelets)に焦点を当て、最適化されたデータ構造と並列実行モデルを採用する。
- データ駆動型のパイプライン設計により、計算フェーズと通信フェーズの間で継続的なデータフローを実現し、無駄なサイクルを最小限に抑える。
実験結果
リサーチクエスチョン
- RQ1不規則でスパースなグラフにおいて、計算量と通信量の比率が高い場合に、分散部分グラフカウントにおける通信オーバーヘッドをどのように最小化できるか?
- RQ2スパースで不規則なグラフデータを処理する際、ノード内スレッド間の負荷を効果的にバランスさせるにはどのような技術が必要か?
- RQ3大規模なテンプレート(12〜15頂点)と数十億エッジのグラフを対象とした大規模な部分グラフカウント処理において、ピークメモリ使用量をどのように低減できるか?
- RQ4既存のMPIベースのツールの限界を超えて、パイプライン化され適応的な通信パターンが、部分グラフカウントのスケーラビリティとパフォーマンスにどの程度向上効果をもたらすか?
- RQ5実世界の大規模グラフ上で15頂点のテンプレートにスケーリングする際、通信と計算のハイブリッドパイプラインは、高い効率と低メモリ使用量を維持できるか?
主な発見
- 提案されたHarp-DAAL AdaptiveLBは、Twitterグラフ(20億エッジ)における大規模テンプレート(u12-2)において、最先端のMPI-Fasciaと比較して最大5倍の高速化を達成した。
- 12〜15頂点のテンプレートにおいて、ピークメモリ使用量がMPI-Fasciaと比較して2倍低減され、120GBメモリノードでも実行可能となった。
- Friendsterグラフ(6.6億頂点、50億エッジ)において、システムは12頂点のテンプレートにスケーリング可能であり、MPI-Fasciaはメモリ制限のため処理が不可能であった。
- 大規模テンプレートにおいて、通信オーバーヘッドはMPI-Fasciaの80%(u10-2時)からHarp-DAALでは約40%にまで低減された。これは適応的グループ通信とパイプライン化によるものである。
- ノード数を8から16に増加した強スケーリング実験では、Harp-DAAL AdaptiveLBがMPI-Fasciaよりも優れたスループットを示し、特に大規模テンプレートで顕著であった。
- 極めて不均衡なデータセットにおいて、実行時間の短縮が最大9倍に達し、データの不規則性に対しても高い耐性を示した。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。