Skip to content

Commit

Permalink
added original toc and fixed up landing page
Browse files Browse the repository at this point in the history
  • Loading branch information
acostadon committed Oct 4, 2024
1 parent ef9a379 commit ae4813f
Showing 1 changed file with 32 additions and 23 deletions.
55 changes: 32 additions & 23 deletions docs/cugraph/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,18 @@ Introduction
~~~~~~~~~~~~
cuGraph is a library of graph algorithms that seamlessly integrates into the
RAPIDS data science ecosystem and allows the data scientist to easily call
graph algorithms using data stored in GPU DataFrames, NetworkX Graphs, or even
CuPy or SciPy sparse Matrices. Our major integration effort with NetworkX
allows for **zero code change** GPU acceleration through the use of the
nx-cugraph backend. NetworkX and the nx-cugraph backend offer a seamless
transition to GPU accelerated graph analytics for NetworkX users with access to
a supported GPU.
graph algorithms using data stored in GPU DataFrames, NetworkX Graphs, or
even CuPy or SciPy sparse Matrices. Our major integration effort with NetworkX allows
**zero code change** use of nx-cuGraph as a backend for NetworkX calls. This offers a near seamless
transition to GPU accelerated graph analytics to NetworkX users with access to a supported GPU.

Getting started with cuGraph

Required hardware/software for cuGraph and `RAPIDS <https://docs.rapids.ai/user-guide>`_
* NVIDIA GPU, Volta architecture or later, with `compute capability 7.0+ <https://developer.nvidia.com/cuda-gpus>`_
* NVIDIA GPU, Volta architecture or later, with `compute capability <https://developer.nvidia.com/cuda-gpus>`_ 7.0+
* CUDA 11.2-11.8, 12.0-12.5
* Python version 3.10, 3.11, or 3.12
* NetworkX version 3.0 or newer in order to use use the nx-cuGraph backend. NetworkX version 3.4 or newer is recommended. (`see below <nx_cugraph/index.rst>`_).
* NetworkX version 3.0 or newer in order to use use the nx-cuGraph backend. Version 3.3 is required to use `NetworkX Configs <https://networkx.org/documentation/stable/reference/backends.html#module-networkx.utils.configs>`_ `see below <#cugraph-using-networkx-code>`_.

Installation
The latest RAPIDS System Requirements documentation is located `here <https://docs.rapids.ai/install#system-req>`_.
Expand All @@ -39,45 +37,56 @@ This includes several ways to set up cuGraph

**Note: Windows use of RAPIDS depends on prior installation of** `WSL2 <https://learn.microsoft.com/en-us/windows/wsl/install>`_.

* From Windows
* From windows

* `Conda <https://docs.rapids.ai/install#wsl2-conda>`_
* `Docker <https://docs.rapids.ai/install#wsl2-docker>`_
* `pip <https://docs.rapids.ai/install#wsl2-pip>`_
* `Conda <https://docs.rapids.ai/install#wsl-conda>`_
* `Docker <https://docs.rapids.ai/install#wsl-docker>`_
* `pip <https://docs.rapids.ai/install#wsl-pip>`_


cuGraph Using NetworkX Code
Build From Source

cuGraph is now available as a NetworkX backend using `nx-cugraph <https://rapids.ai/nx-cugraph/>`_.
nx-cugraph offers NetworkX users a **zero code change** option to accelerate
their existing NetworkX code using an NVIDIA GPU and cuGraph.
To build from source, check each RAPIDS GitHub README for set up and build instructions. Further links are provided in the `selector tool <https://docs.rapids.ai/install#selector>`_.
If additional help is needed reach out on our `Slack Channel <https://rapids-goai.slack.com/archives/C5E06F4DC>`_.

CuGraph Using NetworkX Code
While the steps above are required to use the full suite of cuGraph graph analytics, cuGraph is now supported as a NetworkX backend using `nx-cugraph <https://docs.rapids.ai/api/cugraph/nightly/nx_cugraph/nx_cugraph/>`_.
Nx-cugraph offers those with existing NetworkX code, a **zero code change** option with a growing list of supported algorithms.

Cugraph API Example

.. code-block:: python
# Import needed libraries
import cugraph
import cudf
# Create an instance of the popular Zachary Karate Club graph
from cugraph.datasets import karate
G = karate.get_graph()
# Call cugraph.degree_centrality
vertex_bc = cugraph.degree_centrality(G)
There are several resources containing cuGraph examples, `the cuGraph notebook repository <https://github.com/rapidsai/cugraph/blob/HEAD/notebooks/README.md>`_
There are several resources containing cuGraph examples, `the cuGraph notebook repository <https://github.com/rapidsai/cugraph/blob/main/notebooks/README.md>`_
has many examples of loading graph data and running algorithms in Jupyter notebooks.
The `cuGraph test code <https://github.com/rapidsai/cugraph/tree/main/python/cugraph/cugraph/tests>_` contain python scripts setting up and calling cuGraph algorithms.
A simple example of `testing the degree centrality algorithm <https://github.com/rapidsai/cugraph/blob/HEAD/python/cugraph/cugraph/tests/centrality/test_degree_centrality.py>`_
is a good place to start. Some of these show `multi-GPU tests/examples <https://github.com/rapidsai/cugraph/blob/HEAD/python/cugraph/cugraph/tests/centrality/test_degree_centrality_mg.py>`_ with larger data sets as well.
The `cuGraph test code <https://github.com/rapidsai/cugraph/tree/main/python/cugraph/cugraph/tests>`_ contains python scripts setting up and calling cuGraph algorithms.
A simple example of `testing the degree centrality algorithm <https://github.com/rapidsai/cugraph/blob/main/python/cugraph/cugraph/tests/centrality/test_degree_centrality.py>`_
is a good place to start. Some of these show `multi-GPU tests/examples <https://github.com/rapidsai/cugraph/blob/main/python/cugraph/cugraph/tests/centrality/test_degree_centrality_mg.py>`_ with larger data sets as well

.. toctree::
:maxdepth: 2

top_toc

basics/index
nx_cugraph/index
installation/index
tutorials/index
graph_support/index
wholegraph/index
references/index
api_docs/index

Indices and tables
==================

Expand Down

0 comments on commit ae4813f

Please sign in to comment.