Skip to main content
QUICK REVIEW

[論文レビュー] Efficient and Scalable Graph Pattern Mining on GPUs

Xuhao Chen, Arvind Arvind|arXiv (Cornell University)|Dec 17, 2021
Data Mining Algorithms and Applications被引用数 9
ひとこと要約

G 2 Miner は、パターンに最適化された、入力に最適化された、アーキテクチャに最適化された最適化を組み合わせることで、高い効率性とスケーラビリティを実現する、画期的なマルチGPUグラフパターンマイニングフレームワークである。これは、最先端の単一GPUシステムよりも最大7.2倍高速にGPMワークロードを処理し、V100 GPU上でCPUベースのシステムよりも48.3倍高速に処理可能であり、8 GPUで線形スケーリングを実現し、従来のGPUシステムを超える大規模なグラフとパターンをサポートする。

ABSTRACT

Graph Pattern Mining (GPM) extracts higher-order information in a large graph by searching for small patterns of interest. GPM applications are computationally expensive, and thus attractive for GPU acceleration. Unfortunately, due to the complexity of GPM algorithms and parallel hardware, hand optimizing GPM applications suffers programming complexity, while existing GPM frameworks sacrifice efficiency for programmability. Moreover, little work has been done on GPU to scale GPM computation to large problem sizes. We describe G2Miner, the first Graph Pattern Mining (GPM) framework that runs on multiple GPUs. G2Miner uses pattern-aware, input-aware and architecture-aware search strategies to achieve high efficiency on GPUs. To simplify programming, it provides a code generator that automatically generates pattern-aware CUDA code. G2Miner flexibly supports both breadth-first search (BFS) and depth-first search (DFS) to maximize memory utilization and generate sufficient parallelism for GPUs. For the scalability of G2Miner, we use a customized scheduling policy to balance work among multiple GPUs. Experiments on a V100 GPU show that G2Miner achieves average speedups of 5.4x and 7.2x over two state-of-the-art single-GPU systems, Pangolin and PBE, respectively. In the multi-GPU setting, G2Miner achieves linear speedups from 1 to 8 GPUs, for various patterns and data graphs. We also show that G2Miner on a V100 GPU is 48.3x and 15.2x faster than the state-of-the-art CPU-based system, Peregrine and GraphZero, on a 56-core CPU machine.

研究の動機と目的

  • パターン、入力、ハードウェアの特性を統合的に最適化することで、効率的でスケーラブルかつプログラマブルなGPUベースのグラフパターンマイニング(GPM)フレームワークが不足している問題に対処する。
  • 既存のGPU GPMシステムは、効率性を犠牲にしてでもプログラマビリティを確保するか、メモリ制限やロードバランシングの問題により、大規模なグラフやパターンにスケーリングできないという限界を克服する。
  • パターンに最適化された pruning、入力に最適化されたメモリ推定、GPUアーキテクチャに最適化された並列処理を統合した包括的な最適化戦略を設計することで、GPU上での高性能GPMを実現する。
  • 自動CUDAコードジェネレータを通じてユーザーフrndリエンスなプログラミングモデルを提供し、GPUプログラミングの複雑さを隠蔽することで、非エキスパートユーザーが高性能GPMにアクセス可能にする。
  • カスタムワークロードスケジューリングポリシーを採用することで、1〜8 GPUで線形スケーリングを実現し、従来GPUで不可能だった大規模なグラフと複雑なパターンの処理を可能にする。

提案手法

  • パターン構造に応じて動的にBFSとDFSの間で切り替えるパターンに最適化された探索戦略を設計し、メモリ使用量と並列性のバランスを最適化する。
  • 最適化されたパターンに最適化されたCUDAカーネルを自動生成するコードジェネレータを実装し、低レベルのGPUプログラミングを抽象化することで、高い生産性を実現する。
  • 各ワープが同期されたDFSウォークを実行する2段階の並列化モデルを導入し、スレッドの分岐を最小限に抑え、ワープ実行効率を向上させる。
  • SIMDに最適化されたGPUプリミティブとメモリ最適化されたデータ構造を採用し、メモリフットプリントを削減し、メモリ帯域幅の利用効率を向上させる。
  • 次数に基づくメモリ推定やラベル分布解析といった入力に最適化された最適化を適用し、最悪ケースのメモリ使用量を予測し、動的割り当てを回避する。
  • グラフとパターンの特性を分析することで、GPU間のワークロードをバランスさせるカスタムマルチGPUタスクスケジューラを設計し、1〜8 GPUで線形スループットを達成する。

実験結果

リサーチクエスチョン

  • RQ1パターン構造、入力グラフの特性、GPUアーキテクチャを統合的に最適化することで、GPUベースのGPMフレームワークが、高いパフォーマンスとプログラマビリティを両立できるか?
  • RQ2DFSベースのGPMアルゴリズムをGPUに効率的にマッピングするには、スレッド分岐やメモリバトルラックを回避しながら、pruningの機会を保持するにはどうすればよいか?
  • RQ3GPUベースのGPMシステムが複数GPUにスケーリングできる範囲はどの程度で、ロードバランシングと線形スループットを維持するにはどのようなスケジューリングポリシーが必要か?
  • RQ4パターンに最適化されたpruning、入力に最適化されたメモリ推定、アーキテクチャに最適化された最適化を統合したフレームワークは、既存のシステムと比較してどの程度のパフォーマンス向上を達成できるか?
  • RQ5GPUベースのシステムは、大規模なグラフと複雑なパターンにおいて、最適化されたCPUベースのGPMシステムを上回ることができるか、その差はどの程度か?

主な発見

  • V100 GPU上で、G 2 Miner は最先端の単一GPUシステムPangolinとPBEに対して、それぞれ5.4倍および7.2倍の高速化を達成した。
  • 56コアのCPUマシン上で、単一のV100 GPU上でG 2 Miner はPeregrine より48.3倍、GraphZero より15.2倍高速であり、GPUアクセラレーションの顕著な性能優位性を示した。
  • G 2 Miner はFriendsterのような数十億エッジを持つグラフで8クライQUEパターンマイニングをサポートするが、Pangolin はメモリ不足のエラーにより失敗するなど、大規模な入力へのスケーラビリティを顕著に示した。
  • さまざまなパターンとデータグラフにおいて、G 2 Miner は1〜8 GPUで線形スループットを達成しており、効果的なワークロード配分とロードバランシングが実現されていることを示している。
  • G 2 Miner におけるワープ実行効率は80%を超えるが、Pangolin は約40%にとどまる。これは、最適化されたワープ中心のセット演算とスレッド分岐の低減によるものである。
  • カウンティングオンリのpruningのみで、G 2 Miner では平均して6.2倍のパフォーマンス向上が達成された。この最適化を有効にしても、G 2 Miner はPeregrine より41.1倍高速であり、そのアーキテクチャ的優位性が裏付けられた。

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

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

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

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