Skip to main content
QUICK REVIEW

[論文レビュー] Multi-GPU Graph Analytics

Yuechao Pan, Yangzihao Wang|arXiv (Cornell University)|Apr 19, 2015
Graph Theory and Algorithms参考文献 35被引用数 9
ひとこと要約

この論文は、最小限のプログラマーの作業で単一GPUのグラフアルゴリズムを複数GPUにスケーリングする、マルチGPUグラフ処理ライブラリを提示する。方向最適化トレイバーサルや、必要な最小限のメモリ割り当てといった最適化を導入することで、単一GPU実装比で最大3.86倍の幾何平均の高速化を達成し、BFSでは6GPUで900GTEPSを超える性能を示し、マルチGPUグラフ分析分野における新たなパフォーマンス基準を確立した。

ABSTRACT

We present a single-node, multi-GPU programmable graph processing library that allows programmers to easily extend single-GPU graph algorithms to achieve scalable performance on large graphs with billions of edges. Directly using the single-GPU implementations, our design only requires programmers to specify a few algorithm-dependent concerns, hiding most multi-GPU related implementation details. We analyze the theoretical and practical limits to scalability in the context of varying graph primitives and datasets. We describe several optimizations, such as direction optimizing traversal, and a just-enough memory allocation scheme, for better performance and smaller memory consumption. Compared to previous work, we achieve best-of-class performance across operations and datasets, including excellent strong and weak scalability on most primitives as we increase the number of GPUs in the system.

研究の動機と目的

  • 単一GPUのメモリ制限を超えてGPUグラフ分析をスケーリングする課題に取り組みながら、プログラマビリティとアルゴリズムの一般性を維持すること。
  • 既存のコードを最小限に変更して単一GPUグラフアルゴリズムをマルチGPUシステムにシームレスに拡張できること。
  • 通信帯域幅、同期遅延、メモリ使用量、パーティショニング戦略といったマルチGPUグラフ処理における主なパフォーマンスボトルネックを特定し、最適化すること。
  • 多様なグラフプリミティブとデータセットにおいて、マルチGPUシステムで最高水準のパフォーマンスを達成すること。

提案手法

  • Gunrockという単一GPUグラフ処理フレームワークを拡張し、統一的で高水準なプログラミングモデルを用いてマルチGPU実行を可能にする。
  • CUDAストリームとイベントを活用して計算と通信をオーバーラップさせ、ハードウェアの利用効率を向上させ、無駄な待機時間を削減する。
  • GPUメモリ使用量を最小限に抑えるために、必要な最小限のメモリ割り当て戦略を実装する。
  • BFSおよび関連プリミティブにおける負荷バランスの向上と通信量の削減を目的に、方向最適化トレイバーサルを導入する。
  • 境界頂点数を最小化するように設計されたパーティショニング戦略を採用し、エッジカットの最小化よりも通信効率を向上させる。
  • 低フレームワークオーバーヘッドを確保するため、既存の高性能単一GPUプリミティブを構築ブロックとして活用する。

実験結果

リサーチクエスチョン

  • RQ1パフォーマンス、スケーラビリティ、プログラマビリティのバランスを取った汎用的マルチGPUグラフ処理モデルとは何か?
  • RQ2単一GPUグラフアルゴリズムを、コード変更を最小限に抑えて複数GPUで効率的に実行するにはどうすればよいか?
  • RQ3マルチGPUグラフ処理における主なパフォーマンスボトルネックは何か、そしてそれらを効果的に緩和するにはどうすればよいか?
  • RQ4パーティショニング戦略として、境界頂点数の最小化とエッジカットの最小化のどちらがマルチGPUグラフ処理のパフォーマンスに与える影響が大きいのか?
  • RQ5統一されたフレームワークは、BFS、SSSP、CC、BC、PageRankといった多様なグラフプリミティブにおいて、高パフォーマンスと拡張性の両方を達成できるか?

主な発見

  • 6GPU環境では、方向最適化BFS(DOBFS)で900GTEPSを超える性能を達成し、大規模スケーリングにおけるピーク性能を示した。
  • 幅優先探索(BFS)では、複数のデータセットにおいて単一GPU実行比で幾何平均2.63倍の高速化を達成した。
  • 単一始点最短経路(SSSP)、連結成分(CC)、媒介性中心性(BC)、PageRank(PR)それぞれについて、幾何平均2.57倍、2.00倍、1.96倍、3.86倍の高速化を達成した。
  • 64ビットの頂点IDとエッジIDを使用すると、データ帯域幅が2倍必要になるため、32ビットIDと比較してパフォーマンスが約50%低下する。これは、rmat_n24_32で64ビット頂点IDを使用した場合に確認された。
  • Hybrid++(CPU+dGPU)のような先行システムと比較して、大多数のグラフにおいてTEPSで5〜10倍、TEPS/Wattで3.5倍の性能向上を達成したが、道路ネットワークでは性能が半減した。
  • 研究では、通信帯域幅、同期遅延、メモリ使用量、パーティショニング戦略が主なスケーラビリティボトルネックであると特定した。特に、境界頂点数の最小化はエッジカットの最小化よりも効果的であることが判明した。

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

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

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

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