Skip to content

rapidsai/cugraph-gnn


cuGraph


RAPIDS cuGraph GNN is a monorepo containing packages for GPU-accelerated graph neural networks (GNNs). cuGraph-GNN supports the creation and manipulation of graphs followed by the execution of scalable fast graph algorithms.


News

NEW! nx-cugraph, a NetworkX backend that provides GPU acceleration to NetworkX with zero code change.

> pip install nx-cugraph-cu11 --extra-index-url https://pypi.nvidia.com
> export NETWORKX_AUTOMATIC_BACKENDS=cugraph

That's it. NetworkX now leverages cuGraph for accelerated graph algorithms.


Table of contents




Stack

RAPIDS cuGraph-GNN is a collection of GPU-accelerated plugins that support DGL, PyG, PyTorch, and a variety of other graph and GNN frameworks. cuGraph-GNN is built on top of RAPIDS cuGraph, leveraging its low-level pylibcugraph API and C++ primitives for sampling and other GNN operations (libcugraph)

cuGraph-GNN is comprised of three subprojects: cugraph-DGL, cugraph-PyG, and WholeGraph.

  • cuGraph-DGL supports the Deep Graph Library (DGL) and offers duck-typed versions of DGL's native graph objects, samplers, and loaders.
  • cuGraph-PyG supports PyTorch Geometric (PyG) and implements PyG's GraphStore, FeatureStore, Loader, and Sampler interfaces.
  • WholeGraph supports PyTorch and provides a distributed graph and kv store. Both cuGraph-DGL and cuGraph-PyG can leverage WholeGraph for even greater scalability.

Projects that use cuGraph

(alphabetical order)

(please post an issue if you have a project to add to this list)



Open GPU Data Science

The RAPIDS suite of open source software libraries aims to enable execution of end-to-end data science and analytics pipelines entirely on GPUs. It relies on NVIDIA® CUDA® primitives for low-level compute optimization but exposing that GPU parallelism and high-bandwidth memory speed through user-friendly Python interfaces.

For more project details, see rapids.ai.



Apache Arrow on GPU

The GPU version of Apache Arrow is a common API that enables efficient interchange of tabular data between processes running on the GPU. End-to-end computation on the GPU avoids unnecessary copying and converting of data off the GPU, reducing compute time and cost for high-performance analytics common in artificial intelligence workloads. As the name implies, cuDF uses the Apache Arrow columnar data format on the GPU. Currently, a subset of the features in Apache Arrow are supported.