rapidsai/cugraph
cuGraph - RAPIDS Graph Analytics Library
何を解決するか
cuGraphは、グラフ解析における計算上のボトルネックを処理するように設計されています。GPUアクセラレーションを活用することで、従来のCPUでは遅すぎたりリソースを過剰に消費するため実行が困難な大規模データセット上で、グラフの作成・操作・スケーラブルな高速グラフアルゴリズムの実行が可能になります。
動作方法
このライブラリは、使いやすさと制御のバランスを取るために階層的なAPIアプローチを提供します:
- 高レベルPython API: GPU DataFrames (cuDF) とシームレスに統合され、ETLタスクと機械学習タスク (cuML) の間でデータをGPU上で移動できるようにします。最小限の移植作業で済むPandas風およびNetworkX風のインターフェースを提供します。
- pylibcugraph: より緊密な統合と依存関係の削減を必要とするアプリケーション向けの専用Python APIです。
- libcugraph / libcugraph_c: グラフ構造の直接制御やPython外での統合を必要とするユーザー向けの低レベルC/C++/CUDAインターフェースです。
さまざまな入力形式をサポートしており、Pandas DataFramesやNetworkX Graphオブジェクトを含み、GPU上でApache Arrowの列指向データ形式を使用して効率的なデータ交換を実現します。
対象ユーザー
- データサイエンティスト: Python、Pandas、NetworkXに精通しており、グラフ分析ワークフローをGPUアクセラレーションしたい方。
- C/C++/CUDA開発者: 低レベルのグラフ理論実装を必要とする高性能アプリケーションを開発するエンジニア。
- AI/MLエンジニア: 人工知能ワークロード向けのエンドツーエンドGPUアクセラレーションデータサイエンスパイプラインを構築する専門家。
特徴
- GPUアクセラレーテッドアルゴリズム: PageRankなどのグラフアルゴリズムをスケーラブルかつ高速に実行。
- RAPIDSエコシステム統合: cuDF (ETL) と cuML (ML) 間でのシームレスなデータ連携。
- 柔軟なAPI: 高レベルPythonから低レベルCUDA C++まで、複数のエントリーポイントを提供。
- 広範な互換性: Pandas、NetworkX、Apache Arrowからのデータをサポート。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト