Skip to main content
QUICK REVIEW

[論文レビュー] GraphHP: A Hybrid Platform for Iterative Graph Processing

Qun Chen, Song Bai|arXiv (Cornell University)|Jun 22, 2017
Graph Theory and Algorithms参考文献 27被引用数 7
ひとこと要約

GraphHPは、グラフパーティション内での擬似スーパistaniクション実行モデルを導入することで、反復的グラフ処理を最適化するハイブリッドプラットフォームであり、バルク同期並列(BSP)システムにおける同期と通信のオーバーヘッドを低減しながら、頂点中心のプログラミングモデルを維持する。標準的なグラフワークロード上で評価したところ、GraphHPはGiraph++ や GraphLab よりも顕著にグローバルイテレーション回数とネットワークメッセージ数を削減し、優れた性能を発揮した。

ABSTRACT

The Bulk Synchronous Parallel(BSP) computational model has emerged as the dominant distributed framework to build large-scale iterative graph processing systems. While its implementations(e.g., Pregel, Giraph, and Hama) achieve high scalability, frequent synchronization and communication among the workers can cause substantial parallel inefficiency. To help address this critical concern, this paper introduces the GraphHP(Graph Hybrid Processing) platform which inherits the friendly vertex-centric BSP programming interface and optimizes its synchronization and communication overhead. To achieve the goal, we first propose a hybrid execution model which differentiates between the computations within a graph partition and across the partitions, and decouples the computations within a partition from distributed synchronization and communication. By implementing the computations within a partition by pseudo-superstep iteration in memory, the hybrid execution model can effectively reduce synchronization and communication overhead while not requiring heavy scheduling overhead or graph-centric sequential algorithms. We then demonstrate how the hybrid execution model can be easily implemented within the BSP abstraction to preserve its simple programming interface. Finally, we evaluate our implementation of the GraphHP platform on classical BSP applications and show that it performs significantly better than the state-of-the-art BSP implementations. Our GraphHP implementation is based on Hama, but can easily generalize to other BSP platforms.

研究の動機と目的

  • 反復的グラフ処理における標準BSPプラットフォームの高い同期と通信オーバーヘッドを解消すること。
  • パフォーマンス向上を図りながらも、頂点中心のBSPプログラミングモデルのシンプルさと使いやすさを維持すること。
  • グローバル同期の前にグラフパーティション内でのローカル収束を可能にすることで、グローバルイテレーション回数とネットワークメッセージ数を削減すること。
  • Hamaなどの既存のBSPフレームワークに統合可能であり、主要なアーキテクチャ的変更を要しない汎用プラットフォームを設計すること。

提案手法

  • パーティション内計算とパーティション間計算を分離するハイブリッド実行モデルを提案し、ローカル計算と分散同期を分離することで、独立性を高める。
  • 主記憶装置上で擬似スーパistaniクション反復を実装し、グローバル同期の前に複数回のローカルイテレーションを可能にする。
  • 既存のBSP抽象化にハイブリッドモデルを統合することで、後方互換性とシンプルなプログラミングインターフェースを維持する。
  • ワーカー内でのメモリベースのメッセージ渡しを活用し、ローカル収束を加速させ、ネットワークトラフィックを削減する。
  • スケジューリングのオーバーヘッドを最小限に抑えつつ、効率的なロードバランシングとフォールトトレランスを実現する。
  • 実世界および合成データセットを用いて、標準的なグラフアルゴリズム(例:PageRank、SSSP)の評価を通じて、パフォーマンス向上を測定する。

実験結果

リサーチクエスチョン

  • RQ1頂点中心のプログラミングモデルを損なわず、BSPベースのグラフ処理における同期と通信のオーバーヘッドをハイブリッド実行モデルで低減できるか?
  • RQ2標準BSPと比較して、パーティション内での擬似スーパistaniクション反復は収束速度とグローバルイテレーション回数にどのように影響するか?
  • RQ3Giraph++ や GraphLab といった既存のBSPシステムと比較して、GraphHPはどれほどネットワークメッセージ数を削減し、パフォーマンスを向上できるか?
  • RQ4このハイブリッドモデルは、多様なグラフアルゴリズムとワークロードにスケーラブルかつ一般化可能か?
  • RQ5ハイブリッドモデルにおいて、ローカル計算のオーバーヘッドとグローバル通信の削減の間には、どのようなトレードオフが生じるか?

主な発見

  • GraphHPは、Giraph++ や GraphLab Sync と比較して、PageRank および SSSP アルゴリズムの収束に必要なグローバルイテレーション回数を削減した。
  • グローバル同期の前にローカル収束を可能にすることで、特にパーティション間のネットワークメッセージ数が顕著に削減された。
  • PageRank および SSSP ワークロードにおいて、GraphHPはGiraph++ よりも実行時間で最大3.5倍の高速化を達成した。これは、グローバルイテレーション回数の削減と通信量の低減によるものである。
  • GraphHPは、ロック機構による並列性の低下に苦しむGraphLabのAsyncモードよりも優れたパフォーマンスを発揮した。
  • ハイブリッドモデルは、標準BSPシステムよりも高速な収束を実現した一方で、シンプルで一貫性のある頂点中心のプログラミングインターフェースを維持した。
  • 実世界および合成データセットにわたり、性能向上が一貫して得られたことから、本手法の一般適用性が裏付けられた。

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

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

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

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