Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RELEASE] cugraph v24.10 #4700

Open
wants to merge 72 commits into
base: main
Choose a base branch
from
Open

[RELEASE] cugraph v24.10 #4700

wants to merge 72 commits into from

Commits on Jul 19, 2024

  1. Configuration menu
    Copy the full SHA
    7926b02 View commit details
    Browse the repository at this point in the history

Commits on Jul 30, 2024

  1. Configuration menu
    Copy the full SHA
    988b0cd View commit details
    Browse the repository at this point in the history
  2. Merge pull request #4565 from jameslamb/branch-24.10-merge-24.08

    Merge branch-24.08 into branch-24.10
    AyodeAwe authored Jul 30, 2024
    Configuration menu
    Copy the full SHA
    f592bdb View commit details
    Browse the repository at this point in the history
  3. Merge pull request #4546 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    AyodeAwe authored Jul 30, 2024
    Configuration menu
    Copy the full SHA
    e9709f8 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #4566 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    GPUtester authored Jul 30, 2024
    Configuration menu
    Copy the full SHA
    d80a8b6 View commit details
    Browse the repository at this point in the history
  5. Merge pull request #4569 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    GPUtester authored Jul 30, 2024
    Configuration menu
    Copy the full SHA
    b915a34 View commit details
    Browse the repository at this point in the history

Commits on Jul 31, 2024

  1. Fix ucx-py version, use UCX 1.17.0 in pip devcontainers (#4562)

    Fixes ucx-py dependency in `dependencies.yaml` and `update-version.sh`.
    
    Updates to UCX 1.17.0 in pip devcontainers. (context: #4562 (comment)).
    
    Authors:
      - Bradley Dice (https://github.com/bdice)
      - James Lamb (https://github.com/jameslamb)
    
    Approvers:
      - James Lamb (https://github.com/jameslamb)
    
    URL: #4562
    bdice authored Jul 31, 2024
    Configuration menu
    Copy the full SHA
    4dd8fca View commit details
    Browse the repository at this point in the history
  2. Merge pull request #4573 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    GPUtester authored Jul 31, 2024
    Configuration menu
    Copy the full SHA
    2a79a83 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #4574 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    GPUtester authored Jul 31, 2024
    Configuration menu
    Copy the full SHA
    4a47cae View commit details
    Browse the repository at this point in the history
  4. Merge pull request #4575 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    GPUtester authored Jul 31, 2024
    Configuration menu
    Copy the full SHA
    940e34d View commit details
    Browse the repository at this point in the history
  5. Merge pull request #4576 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    GPUtester authored Jul 31, 2024
    Configuration menu
    Copy the full SHA
    cf8deb0 View commit details
    Browse the repository at this point in the history
  6. Merge pull request #4577 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    GPUtester authored Jul 31, 2024
    Configuration menu
    Copy the full SHA
    0440d9d View commit details
    Browse the repository at this point in the history
  7. Merge pull request #4578 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    GPUtester authored Jul 31, 2024
    Configuration menu
    Copy the full SHA
    a7f28e4 View commit details
    Browse the repository at this point in the history
  8. Merge pull request #4580 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    GPUtester authored Jul 31, 2024
    Configuration menu
    Copy the full SHA
    5fbc0fc View commit details
    Browse the repository at this point in the history
  9. Merge pull request #4581 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    GPUtester authored Jul 31, 2024
    Configuration menu
    Copy the full SHA
    a20d02b View commit details
    Browse the repository at this point in the history
  10. Merge pull request #4584 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    GPUtester authored Jul 31, 2024
    Configuration menu
    Copy the full SHA
    b64bc3e View commit details
    Browse the repository at this point in the history

Commits on Aug 5, 2024

  1. Re-configure benchmarking devices & add markers to `bench_cugraph_uni…

    …form_neighbor_sample` (#4561)
    
    This PR re-enables the `benchmarks/cugraph/pytest-based/bench_cugraph_uniform_neighbor_sample.py` benchmark in the MNMG nightlies. 
    
    This benchmark was previously being skipped due to the fact that the benchmarks are configured to run with Pytest markers `"managedmem_off and poolallocator_on"`. Thanks to @jameslamb for spotting this inside `conftest.py`
    
    By adding the missing markers to the test (and removing some `dgx` machine specific dask-client configs), the benchmark should properly run in the nightly jobs.
    
    Authors:
      - Ralph Liu (https://github.com/nv-rliu)
    
    Approvers:
      - Rick Ratzel (https://github.com/rlratzel)
      - James Lamb (https://github.com/jameslamb)
    
    URL: #4561
    nv-rliu authored Aug 5, 2024
    Configuration menu
    Copy the full SHA
    1be81a4 View commit details
    Browse the repository at this point in the history
  2. Use stream_allocator_adaptor constructor instead of factory. (#4557)

    This PR uses the `stream_allocator_adaptor` constructor instead of a factory. With CTAD, we do not need the factory and can use the constructor directly. The factory will be deprecated in rapidsai/rmm#1626.
    
    Authors:
      - Bradley Dice (https://github.com/bdice)
      - Mark Harris (https://github.com/harrism)
    
    Approvers:
      - James Lamb (https://github.com/jameslamb)
      - Seunghwa Kang (https://github.com/seunghwak)
    
    URL: #4557
    bdice authored Aug 5, 2024
    Configuration menu
    Copy the full SHA
    8f86c82 View commit details
    Browse the repository at this point in the history

Commits on Aug 7, 2024

  1. Merge pull request #4598 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    GPUtester authored Aug 7, 2024
    Configuration menu
    Copy the full SHA
    19fd1d6 View commit details
    Browse the repository at this point in the history

Commits on Aug 8, 2024

  1. Merge pull request #4604 from rapidsai/branch-24.08

    Forward-merge branch-24.08 into branch-24.10
    GPUtester authored Aug 8, 2024
    Configuration menu
    Copy the full SHA
    c2362c2 View commit details
    Browse the repository at this point in the history
  2. Fix test_property_graph_mg Usage of Util Function (#4600)

    This PR fixes an issue that recently arose due to a change in constructing a `cudf.Series` object.
    
    `test_property_graph_mg.py` uses a function from `utilities/utils.py` to construct a Series object from 2d arrays. The function is now using the correct `cudf.Series._from_column` API.
    
    Authors:
      - Ralph Liu (https://github.com/nv-rliu)
    
    Approvers:
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4600
    nv-rliu authored Aug 8, 2024
    Configuration menu
    Copy the full SHA
    d92c257 View commit details
    Browse the repository at this point in the history

Commits on Aug 9, 2024

  1. Use tool.scikit-build.cmake.version, set scikit-build-core minimum-ve…

    …rsion (#4597)
    
    Contributes to rapidsai/build-planning#58.
    
    `scikit-build-core==0.10.0` was released today (https://github.com/scikit-build/scikit-build-core/releases/tag/v0.10.0), and wheel-building configurations across RAPIDS are incompatible with it.
    
    This proposes upgrading to that version and fixing configuration here in a way that:
    
    * is compatible with that new `scikit-build-core` version
    * takes advantage of the forward-compatibility mechanism (`minimum-version`) that `scikit-build-core` provides, to reduce the risk of needing to do this again in the future
    
    Authors:
      - James Lamb (https://github.com/jameslamb)
    
    Approvers:
      - Mike Sarahan (https://github.com/msarahan)
    
    URL: #4597
    jameslamb authored Aug 9, 2024
    Configuration menu
    Copy the full SHA
    f935e76 View commit details
    Browse the repository at this point in the history
  2. Update pre-commit hooks (#4605)

    This PR updates pre-commit hooks to the latest versions that are supported without causing style check errors.
    
    Authors:
      - Kyle Edwards (https://github.com/KyleFromNVIDIA)
    
    Approvers:
      - James Lamb (https://github.com/jameslamb)
    
    URL: #4605
    KyleFromNVIDIA authored Aug 9, 2024
    Configuration menu
    Copy the full SHA
    ce5d3dd View commit details
    Browse the repository at this point in the history
  3. Biased sampling primitive bug fix (#4607)

    Fix bugs in biased sampling with 0 bias values.
    
    Add tests that include 0 bias edges.
    
    Authors:
      - Seunghwa Kang (https://github.com/seunghwak)
    
    Approvers:
      - Chuck Hastings (https://github.com/ChuckHastings)
      - Alex Barghi (https://github.com/alexbarghi-nv)
      - Joseph Nke (https://github.com/jnke2016)
    
    URL: #4607
    seunghwak authored Aug 9, 2024
    Configuration menu
    Copy the full SHA
    a5cdea2 View commit details
    Browse the repository at this point in the history

Commits on Aug 13, 2024

  1. Add an Explanatory Error Message for uint Types (#4556)

    Clarify that unsigned integer types are not supported as vertex ids in the error message.  Resolves issue reported by @ogreen.
    
    Authors:
      - Alex Barghi (https://github.com/alexbarghi-nv)
    
    Approvers:
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4556
    alexbarghi-nv authored Aug 13, 2024
    Configuration menu
    Copy the full SHA
    1ef3f56 View commit details
    Browse the repository at this point in the history

Commits on Aug 15, 2024

  1. Updates to cugraph.hypergraph (Duplicate Col Labels Bug) (#4610)

    cc: @rlratzel @ChuckHastings 
    
    This PR addresses failures seen in certain PRs (like [here](https://github.com/rapidsai/cugraph/actions/runs/10372270389/job/28718471674?pr=4606#step:7:5269)) due to a [recent change](rapidsai/cudf#16514) to `cudf` that disallows selecting duplicate column labels.
    
    ---
    
    In `hypergraph.py`, this PR modifies `_create_hyper_edges` and `_create_direct_edges` to ensure that DataFrames are being indexed by non-duplicate column values.
    
    This is done by taking a list that includes duplicates (`fs`), and removing the non-unique values
    ```python
    fs = list(set(fs))
    ```
    
    
    _This part requires some attention from the author of the unit test @jnke2016_
    
    In `test_hypergraph.py`, this PR adds the `check_like=True` arg to `assert_frame_equals` function because the ordering of the columns is different for the two DFs.
    
    Authors:
      - Ralph Liu (https://github.com/nv-rliu)
    
    Approvers:
      - Rick Ratzel (https://github.com/rlratzel)
      - Chuck Hastings (https://github.com/ChuckHastings)
      - Paul Taylor (https://github.com/trxcllnt)
      - Joseph Nke (https://github.com/jnke2016)
    
    URL: #4610
    nv-rliu authored Aug 15, 2024
    Configuration menu
    Copy the full SHA
    a538745 View commit details
    Browse the repository at this point in the history
  2. Improve update-version.sh (#4599)

    This PR improves `update-version.sh` by clarifying suffix handling and ucxx/ucx-py version handling.
    
    Authors:
      - Bradley Dice (https://github.com/bdice)
    
    Approvers:
      - James Lamb (https://github.com/jameslamb)
    
    URL: #4599
    bdice authored Aug 15, 2024
    Configuration menu
    Copy the full SHA
    3762e6f View commit details
    Browse the repository at this point in the history
  3. Set CUDA_STATIC_MATH_LIBRARIES in Python builds (#4612)

    In #4526, we introduced the CUDA_STATIC_MATH_LIBRARIES option and set it to OFF by default. We did not set it to ON in the Python builds, and as a result ended up bundling dynamic CUDA libraries. Set the option to ON in the Python build.
    
    Authors:
      - Kyle Edwards (https://github.com/KyleFromNVIDIA)
    
    Approvers:
      - Vyas Ramasubramani (https://github.com/vyasr)
    
    URL: #4612
    KyleFromNVIDIA authored Aug 15, 2024
    Configuration menu
    Copy the full SHA
    de81819 View commit details
    Browse the repository at this point in the history

Commits on Aug 16, 2024

  1. Add Additional Check for NetworkX Release Candidate Versions (#4613)

    Part of rapidsai/graph_dl#579
    
    This PR allows `nx-cugraph` to operate with release candidate (under development) versions of `networkx`
    
    What This Pattern Allows:
    - Just a single digit: `3.4`, `3.9`, etc
    
    - Release Candidate format: `3.4rc0`. `3.7rc2`
    
    This is needed to complete adding nightly test coverage for development branches of `nx`
    
    Authors:
      - Ralph Liu (https://github.com/nv-rliu)
    
    Approvers:
      - Erik Welch (https://github.com/eriknw)
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4613
    nv-rliu authored Aug 16, 2024
    Configuration menu
    Copy the full SHA
    a6a84eb View commit details
    Browse the repository at this point in the history

Commits on Aug 19, 2024

  1. [FEA] Biased Sampling in cuGraph-PyG (#4586)

    Enables biased sampling in PylibcuGraph and cuGraph-PyG.  Also fixes a memory issue that was revealed by calling biased sampling instead of uniform neighbor sampling; the loader was pre-allocating more memory than needed.
    
    - [x] Update pylibcugraph
    - [x] Update dist sampler in cugraph
    - [x] Correctness testing
    - [x] Make issue for PyG upstream ([here](pyg-team/pytorch_geometric#9566))
    
    Authors:
      - Alex Barghi (https://github.com/alexbarghi-nv)
    
    Approvers:
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4586
    alexbarghi-nv authored Aug 19, 2024
    Configuration menu
    Copy the full SHA
    4c26e7a View commit details
    Browse the repository at this point in the history

Commits on Aug 20, 2024

  1. Fix ListColumn constructor argument (#4620)

    A recent API change in cudf (rapidsai/cudf#16465) now requires the `data` argument to be passed (consistent with the other Column subclasses)
    
    Authors:
      - Matthew Roeschke (https://github.com/mroeschke)
    
    Approvers:
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4620
    mroeschke authored Aug 20, 2024
    Configuration menu
    Copy the full SHA
    710f268 View commit details
    Browse the repository at this point in the history
  2. Migrate get_sampling_index function from cugraph-ops to cugraph (#4594)

    This PR copies the source files from cugraph-ops that provide the `get_sampling_index` function into the cugraph source code.  The code was placed in a single source directory (`src/from_cugraph_ops`) and cleaned up a little bit to remove parts of the cugraph-ops infrastructure that were unused.
    
    There are still improvements that could be made, but this should be functional in allowing us to avoid using the version from cugraph-ops.
    
    Authors:
      - Chuck Hastings (https://github.com/ChuckHastings)
    
    Approvers:
      - Seunghwa Kang (https://github.com/seunghwak)
      - Bradley Dice (https://github.com/bdice)
    
    URL: #4594
    ChuckHastings authored Aug 20, 2024
    Configuration menu
    Copy the full SHA
    b8ae82e View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2024

  1. Remove a bunch of legacy code that's no longer used (#4609)

    Supersedes #4553.  That PR identified some issues with legacy code that's not really necessary anymore.
    
    This PR removes the `graph_utils.cuh` file and gets rid of a few straggling functions that still used it.
    
    Authors:
      - Chuck Hastings (https://github.com/ChuckHastings)
    
    Approvers:
      - Seunghwa Kang (https://github.com/seunghwak)
      - Robert Maynard (https://github.com/robertmaynard)
    
    URL: #4609
    ChuckHastings authored Aug 21, 2024
    Configuration menu
    Copy the full SHA
    3db77b3 View commit details
    Browse the repository at this point in the history
  2. Define and Implement C++ API for negative sampling (#4523)

    Defines and implements the PLC/C/C++ APIs for negative sampling.
    
    Closes #4497
    
    Authors:
      - Chuck Hastings (https://github.com/ChuckHastings)
    
    Approvers:
      - Alex Barghi (https://github.com/alexbarghi-nv)
      - Joseph Nke (https://github.com/jnke2016)
      - Seunghwa Kang (https://github.com/seunghwak)
    
    URL: #4523
    ChuckHastings authored Aug 21, 2024
    Configuration menu
    Copy the full SHA
    97d1641 View commit details
    Browse the repository at this point in the history

Commits on Aug 23, 2024

  1. Use CUDA math wheels (#4621)

    Use CUDA math wheels to reduce wheel size by not statically linking CUDA math libraries.
    
    Contributes to rapidsai/build-planning#35
    
    Authors:
      - Kyle Edwards (https://github.com/KyleFromNVIDIA)
    
    Approvers:
      - James Lamb (https://github.com/jameslamb)
      - Robert Maynard (https://github.com/robertmaynard)
      - Chuck Hastings (https://github.com/ChuckHastings)
      - Bradley Dice (https://github.com/bdice)
    
    URL: #4621
    KyleFromNVIDIA authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    6b6e8c8 View commit details
    Browse the repository at this point in the history

Commits on Aug 26, 2024

  1. Drop Python 3.9 support (#4625)

    Contributes to rapidsai/build-planning#88
    
    Finishes the work of dropping Python 3.9 support.
    
    This project stopped building / testing against Python 3.9 as of rapidsai/shared-workflows#235.
    This PR updates configuration and docs to reflect that.
    
    ## Notes for Reviewers
    
    ### How I tested this
    
    Checked that there were no remaining uses like this:
    
    ```shell
    git grep -E '3\.9'
    git grep '39'
    git grep 'py39'
    ```
    
    And similar for variations on Python 3.8 (to catch things that were missed the last time this was done).
    
    Authors:
      - James Lamb (https://github.com/jameslamb)
    
    Approvers:
      - Kyle Edwards (https://github.com/KyleFromNVIDIA)
      - Bradley Dice (https://github.com/bdice)
      - Brad Rees (https://github.com/BradReesWork)
    
    URL: #4625
    jameslamb authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    73a2a84 View commit details
    Browse the repository at this point in the history

Commits on Aug 27, 2024

  1. Remove Warnings and Timeout from `bench_cugraph_uniform_neighbor_samp…

    …le.py` (#4631)
    
    This PR adds two arguments (`use_legacy_names=False`, `with_edge_properties=True`) to suppress warnings from `bench_cugraph_uniform_neighbor_sample.py` and reduces the number of fan-out combinations being run in the nightlies.
    
    Authors:
      - Ralph Liu (https://github.com/nv-rliu)
    
    Approvers:
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4631
    nv-rliu authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    f7e1cea View commit details
    Browse the repository at this point in the history

Commits on Aug 28, 2024

  1. [FEA] DGL Examples (#4583)

    Adds updated examples for the new cuGraph-DGL API. 
    
    Also fixes a minor performance issue by allowing access to tensors through an `EmbeddingView`.
    
    Authors:
      - Alex Barghi (https://github.com/alexbarghi-nv)
      - Ralph Liu (https://github.com/nv-rliu)
    
    Approvers:
      - Mike Sarahan (https://github.com/msarahan)
      - Tingyu Wang (https://github.com/tingyu66)
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4583
    alexbarghi-nv authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    4940e6d View commit details
    Browse the repository at this point in the history
  2. Update rapidsai/pre-commit-hooks (#4633)

    This PR updates rapidsai/pre-commit-hooks to the version 0.4.0.
    
    Authors:
      - Kyle Edwards (https://github.com/KyleFromNVIDIA)
    
    Approvers:
      - James Lamb (https://github.com/jameslamb)
    
    URL: #4633
    KyleFromNVIDIA authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    2c97eb6 View commit details
    Browse the repository at this point in the history
  3. Negative Sampling test needs whole GPU (#4636)

    Increase negative sampling test percentage to 100, allowing it to have an entire GPU.
    
    This should correct intermittent C++ unit test failures in CI.
    
    Authors:
      - Chuck Hastings (https://github.com/ChuckHastings)
    
    Approvers:
      - Seunghwa Kang (https://github.com/seunghwak)
    
    URL: #4636
    ChuckHastings authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    0707fb4 View commit details
    Browse the repository at this point in the history

Commits on Aug 29, 2024

  1. Use CategoricalColumn instead of build_categorical_column (#4618)

    Over in cudf, I'm planning on removing `build_categorical_column` in favor of the `CategoricalColumn` constructor so adjusting the usage here
    
    Authors:
      - Matthew Roeschke (https://github.com/mroeschke)
    
    Approvers:
      - Brad Rees (https://github.com/BradReesWork)
      - GALI PREM SAGAR (https://github.com/galipremsagar)
    
    URL: #4618
    mroeschke authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    9b41aef View commit details
    Browse the repository at this point in the history
  2. Fix build strings in nx-cugraph (#4639)

    Build strings aren't being published correctly for `nx-cugraph` (see missing info in current nightlies: https://anaconda.org/rapidsai-nightly/nx-cugraph/files). This is due to a formatting or copy-paste problem in the `meta.yaml` recipe file. This PR fixes the problem.
    
    Authors:
      - Bradley Dice (https://github.com/bdice)
    
    Approvers:
      - James Lamb (https://github.com/jameslamb)
    
    URL: #4639
    bdice authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    ec43b21 View commit details
    Browse the repository at this point in the history

Commits on Aug 30, 2024

  1. Update examples to build with latest changes to cugraph (#4632)

    We don't build the examples as part of CI.  Some changes were made to the cugraph functions that cause the examples to be out of date.
    
    Also, we should release the RAFT handle before calling MPI_Finalize.
    
    Authors:
      - Chuck Hastings (https://github.com/ChuckHastings)
    
    Approvers:
      - Seunghwa Kang (https://github.com/seunghwak)
    
    URL: #4632
    ChuckHastings authored Aug 30, 2024
    Configuration menu
    Copy the full SHA
    65e2348 View commit details
    Browse the repository at this point in the history
  2. update a few more Python references to Python 3.10 (#4637)

    Contributes to rapidsai/build-planning#88.
    
    #4625 dropped Python 3.9 support here (as part of the RAPIDS-wide effort to drop Python 3.9 in this release). This PR fixes a few things that were missed in that PR.
    
    Authors:
      - James Lamb (https://github.com/jameslamb)
      - https://github.com/jakirkham
    
    Approvers:
      - Don Acosta (https://github.com/acostadon)
      - https://github.com/jakirkham
      - Bradley Dice (https://github.com/bdice)
      - Mike Sarahan (https://github.com/msarahan)
      - Alex Barghi (https://github.com/alexbarghi-nv)
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4637
    jameslamb authored Aug 30, 2024
    Configuration menu
    Copy the full SHA
    d5154d5 View commit details
    Browse the repository at this point in the history

Commits on Aug 31, 2024

  1. Add nx-cugraph Benchmarking Scripts (#4616)

    Closes rapidsai/graph_dl#596
    This PR adds scripts written by @rlratzel to generate benchmarking numbers for `nx-cugraph`
    
    Authors:
      - Ralph Liu (https://github.com/nv-rliu)
      - Rick Ratzel (https://github.com/rlratzel)
    
    Approvers:
      - Don Acosta (https://github.com/acostadon)
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4616
    nv-rliu authored Aug 31, 2024
    Configuration menu
    Copy the full SHA
    996c7a4 View commit details
    Browse the repository at this point in the history

Commits on Sep 3, 2024

  1. Heterogeneous renumbering implementation (#4602)

    This PR implements heterogeneous renumbering for GNN.
    
    In addition,
    
    * Update the existing (homogeneous) sampling post processing function test file extension from .cu to .cpp.
    * Remove the unused `renumber_sampled_edgelist` function (breaking because this function is removed)
    * Add a `stride_fill` utility function (thrust wrapper)
    * Add test utility functions to generate edge types & IDs. 
    
    Closes #4412
    
    Authors:
      - Seunghwa Kang (https://github.com/seunghwak)
    
    Approvers:
      - Chuck Hastings (https://github.com/ChuckHastings)
      - Alex Barghi (https://github.com/alexbarghi-nv)
    
    URL: #4602
    seunghwak authored Sep 3, 2024
    Configuration menu
    Copy the full SHA
    338e5e0 View commit details
    Browse the repository at this point in the history
  2. Download fewer datasets for C/C++ unit tests (#4624)

    C++ unit tests don't currently require all of the test data that is currently downloaded.
    
    Added a new file in s3 that contains the files used for C++ unit tests.
    
    Authors:
      - Chuck Hastings (https://github.com/ChuckHastings)
    
    Approvers:
      - Rick Ratzel (https://github.com/rlratzel)
      - Bradley Dice (https://github.com/bdice)
    
    URL: #4624
    ChuckHastings authored Sep 3, 2024
    Configuration menu
    Copy the full SHA
    52c4457 View commit details
    Browse the repository at this point in the history

Commits on Sep 11, 2024

  1. Update edge triangle count to call a non detail primitive (#4630)

    Create a non detail primitive that iterates over each input vertex pair and returns the common destination neighbor list
    pair in a CSR-like format.
    
    closes #3475
    
    Authors:
      - Joseph Nke (https://github.com/jnke2016)
    
    Approvers:
      - Chuck Hastings (https://github.com/ChuckHastings)
      - Seunghwa Kang (https://github.com/seunghwak)
    
    URL: #4630
    jnke2016 authored Sep 11, 2024
    Configuration menu
    Copy the full SHA
    8009309 View commit details
    Browse the repository at this point in the history
  2. Add support for Python 3.12 (#4647)

    Contributes to rapidsai/build-planning#40
    
    This PR adds support for Python 3.12.
    
    ## Notes for Reviewers
    
    This is part of ongoing work to add Python 3.12 support across RAPIDS.
    It temporarily introduces a build/test matrix including Python 3.12, from rapidsai/shared-workflows#213.
    
    A follow-up PR will revert back to pointing at the `branch-24.10` branch of `shared-workflows` once all
    RAPIDS repos have added Python 3.12 support.
    
    ### This will fail until all dependencies have been updates to Python 3.12
    
    CI here is expected to fail until all of this project's upstream dependencies support Python 3.12.
    
    This can be merged whenever all CI jobs are passing.
    
    Authors:
      - James Lamb (https://github.com/jameslamb)
    
    Approvers:
      - Bradley Dice (https://github.com/bdice)
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4647
    jameslamb authored Sep 11, 2024
    Configuration menu
    Copy the full SHA
    7c86b98 View commit details
    Browse the repository at this point in the history
  3. Add --cpu-only or --gpu-only Arguments to nx-cugraph Benchmark (#…

    …4648)
    
    This PR is a follow-up to #4616
    
    This PR adds the following CLI argument options for `benchmarks/nx-cugraph/pytest-based/run-main-benchmarks.sh` 
     - `--cpu-only`
     - `--gpu-only`
    
    And adds minor updates to the README
    
    Authors:
      - Ralph Liu (https://github.com/nv-rliu)
    
    Approvers:
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4648
    nv-rliu authored Sep 11, 2024
    Configuration menu
    Copy the full SHA
    a4baa5b View commit details
    Browse the repository at this point in the history

Commits on Sep 16, 2024

  1. Biased Random Walks and Node2Vec implementation (#4645)

    Replaces #4499 
    Closes #4499 
    
    @G-Cornett implemented biased random walks and node2vec during his internship.  This PR includes his changes to implement those algorithms.
    
    Authors:
      - Chuck Hastings (https://github.com/ChuckHastings)
      - Garrett Cornett (https://github.com/G-Cornett)
    
    Approvers:
      - Joseph Nke (https://github.com/jnke2016)
      - Naim (https://github.com/naimnv)
      - Seunghwa Kang (https://github.com/seunghwak)
    
    URL: #4645
    ChuckHastings authored Sep 16, 2024
    Configuration menu
    Copy the full SHA
    4d2dd27 View commit details
    Browse the repository at this point in the history

Commits on Sep 18, 2024

  1. Update flake8 to 7.1.1. (#4652)

    We need to update flake8 to fix a false-positive that appears with older flake8 versions on Python 3.12.
    
    Authors:
      - Bradley Dice (https://github.com/bdice)
    
    Approvers:
      - James Lamb (https://github.com/jameslamb)
      - Alex Barghi (https://github.com/alexbarghi-nv)
      - Kyle Edwards (https://github.com/KyleFromNVIDIA)
    
    URL: #4652
    bdice authored Sep 18, 2024
    Configuration menu
    Copy the full SHA
    467d818 View commit details
    Browse the repository at this point in the history
  2. Use CI workflow branch 'branch-24.10' again (#4654)

    All RAPIDS libraries have been updated with Python 3.12 support, so
    Python 3.12 changes
    have been merged into `branch-24.10` of `shared-workflows`:
    rapidsai/shared-workflows#213
    
    This updates GitHub Actions configs here to that branch.
    jameslamb authored Sep 18, 2024
    Configuration menu
    Copy the full SHA
    eb8963a View commit details
    Browse the repository at this point in the history

Commits on Sep 19, 2024

  1. Recommending miniforge for conda install (#4650)

    Recommending `miniforge` for conda install in installation docs.
    
    Authors:
      - Mike McCarty (https://github.com/mmccarty)
      - Bradley Dice (https://github.com/bdice)
      - Alex Barghi (https://github.com/alexbarghi-nv)
    
    Approvers:
      - Rick Ratzel (https://github.com/rlratzel)
      - Bradley Dice (https://github.com/bdice)
    
    URL: #4650
    mmccarty authored Sep 19, 2024
    Configuration menu
    Copy the full SHA
    8b1a437 View commit details
    Browse the repository at this point in the history

Commits on Sep 20, 2024

  1. Drops duplicate edges in non-MultiGraph PLC SGGraph instances (#4658)

    Graph input with duplicate edges intended for `Graph`/`DiGraph` instances resulted in internal PLC `SGGraph` instances with duplicate edges, which were effectively treated as MultiGraphs and caused incorrect results from algorithms like `pagerank`.
    
    This PR sets the `drop_multi_edges` PLC `SGGraph` ctor option to have PLC remove duplicate edges on `SGGraph` creation.
    
    The overhead to drop duplicate edges for non-MultiGraphs is negligible, and in the case of a large test graph (wikipedia data, 37.5M nodes, 464.5M edges) resulted in <s>an overall _speedup_ for pagerank going from 12.2 seconds to 10.7 seconds on my workstation, likely due to fewer edges to process</s> a minor slowdown from 10.5s to 10.7s. _edit: after several re-runs, the pagerank runtime before the change settled to 10.5, and the runtime after the change was typically 10.7._
    
    A test was added that uses pagerank to ensure Graphs vs. MultiGraphs are handled correctly and duplicate edges are dropped as needed.  The results when run without `drop_multi_edges` set:
    ```
    >       assert actual_pr_for_G == approx(expected_pr_for_G)
    E       assert {0: 0.0875795...7955580949783} == approx({0: 0....32 ± 1.8e-07})
    E
    E         comparison failed. Mismatched elements: 4 / 4:
    E         Max absolute difference: 0.08785887916592061
    E         Max relative difference: 0.5007959662968462
    E         Index | Obtained            | Expected
    E         0     | 0.08757955580949783 | 0.17543839772251532 ± 1.8e-07
    E         1     | 0.41242048144340515 | 0.32456160227748454 ± 3.2e-07
    E         2     | 0.41242048144340515 | 0.32456160227748454 ± 3.2e-07
    E         3     | 0.08757955580949783 | 0.17543839772251532 ± 1.8e-07
    ```
    The same test passes when run with the changes in this PR to set `drop_multi_edges`.
    
    Authors:
      - Rick Ratzel (https://github.com/rlratzel)
    
    Approvers:
      - Erik Welch (https://github.com/eriknw)
    
    URL: #4658
    rlratzel authored Sep 20, 2024
    Configuration menu
    Copy the full SHA
    7e058e2 View commit details
    Browse the repository at this point in the history

Commits on Sep 24, 2024

  1. Update update-version.sh to use packaging lib (#4664)

    This PR updates the update-version.sh script to use the packaging
    library, given that setuptools is no longer included by default in
    Python 3.12.
    AyodeAwe authored Sep 24, 2024
    Configuration menu
    Copy the full SHA
    607ee5b View commit details
    Browse the repository at this point in the history
  2. nx-cugraph: Updates nxcg.Graph classes for API-compatibility with Net…

    …workX Graph classes, needed for zero code change graph generators (#4629)
    
    This is an alternative approach to #4558 for enabling GPU-accelerated NetworkX to "just work". It has similarities to #4558. I opted to make separate classes such as `ZeroGraph`, which I think makes for cleaner separation and gives us and users more control.
    
    There are a few lingering TODOs and code comments to tidy up, but I don't think there are any show-stoppers. I have not updated methods (such as `number_of_nodes`) to optimistically try to use GPU if possible, b/c this is not strictly necessary, but we should update these soon.
    
    I have run NetworkX tests with these classes using networkx/networkx#7585 and networkx/networkx#7600. We need the behavior in 7585, and 7600 is only useful for testing.
    
    There are only 3 new failing tests, and 3 tests that hang (I'll run them overnight to see if they finish). Here's a test summary:
    ```
    5548 passed, 24 skipped, 16 xfailed, 25 xpassed
    ```
    Note that 25 tests that were failing now pass. I have not investigated test failures, xfails, or xpasses yet. I would like to add tests too.
    
    We rely heavily on the networkx cache. I think this is preferred.
    
    It is late for me. I will describe and show how and why this works later.
    
    I opted for `zero=` and `ZeroGraph`, because I find them delightful! Renaming is trivial if other terms are preferred.
    
    CC @quasiben
    
    Authors:
      - Erik Welch (https://github.com/eriknw)
    
    Approvers:
      - Bradley Dice (https://github.com/bdice)
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4629
    eriknw authored Sep 24, 2024
    Configuration menu
    Copy the full SHA
    59217ad View commit details
    Browse the repository at this point in the history

Commits on Sep 25, 2024

  1. bump NCCL floor to 2.18.1.1, include nccl.h where it's needed (#4661)

    Contributes to rapidsai/build-planning#102
    
    Some RAPIDS libraries are using `ncclCommSplit()`, which was introduced in `nccl==2.18.1.1`. This is part of a series of PRs across RAPIDS updating libraries' pins to `nccl>=2.18.1.1` to ensure they get a new-enough version that supports that.
    
    Authors:
      - James Lamb (https://github.com/jameslamb)
    
    Approvers:
      - Chuck Hastings (https://github.com/ChuckHastings)
      - Vyas Ramasubramani (https://github.com/vyasr)
      - https://github.com/jakirkham
    
    URL: #4661
    jameslamb authored Sep 25, 2024
    Configuration menu
    Copy the full SHA
    27f2256 View commit details
    Browse the repository at this point in the history
  2. Install mg test executables (#4656)

    `rapids_test_add()` does not install the executables we need, because it's checking the value of `${MPIEXEC_EXECUTABLE}` and seeing that it's not a target. Install the target separately.
    
    Authors:
      - Kyle Edwards (https://github.com/KyleFromNVIDIA)
    
    Approvers:
      - Bradley Dice (https://github.com/bdice)
      - Chuck Hastings (https://github.com/ChuckHastings)
    
    URL: #4656
    KyleFromNVIDIA authored Sep 25, 2024
    Configuration menu
    Copy the full SHA
    87987af View commit details
    Browse the repository at this point in the history
  3. Fix cit-patents Dataset for nx-cugraph Benchmark (#4666)

    Replace `_` with `-`
    
    Authors:
      - Ralph Liu (https://github.com/nv-rliu)
    
    Approvers:
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4666
    nv-rliu authored Sep 25, 2024
    Configuration menu
    Copy the full SHA
    1e5b328 View commit details
    Browse the repository at this point in the history

Commits on Sep 26, 2024

  1. [FEA] Biased Sampling in cuGraph-DGL (#4595)

    Adds support for biased sampling to cuGraph-DGL.
    
    Resolves rapidsai/cugraph-gnn#25
    Merge after #4583, #4586, #4607
    
    Authors:
      - Alex Barghi (https://github.com/alexbarghi-nv)
      - Ralph Liu (https://github.com/nv-rliu)
      - Seunghwa Kang (https://github.com/seunghwak)
    
    Approvers:
      - Ray Douglass (https://github.com/raydouglass)
      - Tingyu Wang (https://github.com/tingyu66)
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4595
    alexbarghi-nv authored Sep 26, 2024
    Configuration menu
    Copy the full SHA
    36c190a View commit details
    Browse the repository at this point in the history

Commits on Sep 27, 2024

  1. reduce pip verbosity in wheel builds (#4651)

    Proposes reducing the verbosity of `pip wheel` called in wheel builds from `-vvv` to `-v`.
    
    This eliminates the 1000s of lines like this in CI logs:
    
    ![image](https://github.com/user-attachments/assets/4dc2b024-c9f1-4618-9c94-8166c6aa9a13)
    
    to hopefully make it easier to view those logs interactively
    
    Authors:
      - James Lamb (https://github.com/jameslamb)
    
    Approvers:
      - Vyas Ramasubramani (https://github.com/vyasr)
    
    URL: #4651
    jameslamb authored Sep 27, 2024
    Configuration menu
    Copy the full SHA
    54b03da View commit details
    Browse the repository at this point in the history

Commits on Sep 30, 2024

  1. Remove NumPy <2 pin (#4615)

    This PR removes the NumPy<2 pin which is expected to work for
    RAPIDS projects once CuPy 13.3.0 is released (CuPy 13.2.0 had
    some issues preventing the use with NumPy 2).
    
    Authors:
      - Sebastian Berg (https://github.com/seberg)
      - https://github.com/jakirkham
      - Rick Ratzel (https://github.com/rlratzel)
      - Alex Barghi (https://github.com/alexbarghi-nv)
      - James Lamb (https://github.com/jameslamb)
      - Philip Hyunsu Cho (https://github.com/hcho3)
    
    Approvers:
      - Alex Barghi (https://github.com/alexbarghi-nv)
      - James Lamb (https://github.com/jameslamb)
    
    URL: #4615
    seberg authored Sep 30, 2024
    Configuration menu
    Copy the full SHA
    0f4fe8f View commit details
    Browse the repository at this point in the history
  2. Support Negative Sampling in pylibcugraph and cuGraph-PyG (#4660)

    Adds support for negative sampling in `pylibcugraph` and `cugraph-pyg`.
    
    Closes rapidsai/cugraph-gnn#39
    Merge after #4641
    
    Authors:
      - Alex Barghi (https://github.com/alexbarghi-nv)
    
    Approvers:
      - Chuck Hastings (https://github.com/ChuckHastings)
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4660
    alexbarghi-nv authored Sep 30, 2024
    Configuration menu
    Copy the full SHA
    4dfd3b3 View commit details
    Browse the repository at this point in the history
  3. Swtch traceback to --native in cugraph (#4663)

    In cudf we have observed a ~10% speed up of pytest suite execution by switching pytest traceback to `--native`:
    
    ```
    currently:
    
    102474 passed, 2117 skipped, 902 xfailed in 892.16s (0:14:52)
    
    --tb=short:
    
    102474 passed, 2117 skipped, 902 xfailed in 898.99s (0:14:58)
    
    --tb=no:
    
    102474 passed, 2117 skipped, 902 xfailed in 815.98s (0:13:35)
    
    --tb=native:
    
    102474 passed, 2117 skipped, 902 xfailed in 820.92s (0:13:40)
    ```
    
    This PR makes similar change to `cugraph` repo.
    
    xref: rapidsai/cudf#16851
    
    Authors:
      - GALI PREM SAGAR (https://github.com/galipremsagar)
    
    Approvers:
      - Brad Rees (https://github.com/BradReesWork)
    
    URL: #4663
    galipremsagar authored Sep 30, 2024
    Configuration menu
    Copy the full SHA
    9b107b9 View commit details
    Browse the repository at this point in the history

Commits on Oct 3, 2024

  1. Add nx-cugraph Docs Pages (#4669)

    Closes rapidsai/graph_dl#606 and [another
    issue]
    
    ## Proposed Changes
    In preparation for GA release, this PR adds a landing page for
    `nx-cugraph` in the cugraph API documentation site. The new pages can be
    viewed by clicking `nx-cugraph` in the navigation bar at the top of the
    page.
    
    ### New pages
    nx-cugraph
     └─ How it works
     └─ Supported Algorithms
     └─ Getting Started
     └─ Benchmarks
     └─ FAQ
    
    ## Notes for Reviewers
    
    - In order to build and test these docs, I modified the `build.sh` file
    to use `sphinx-autobuild`.
    
    ```bash
    122
    123     cd ${REPODIR}/docs/cugraph-docs
    124     #make html
    125     sphinx-autobuild source build/html
    126 fi
    127
    ```
    
    - For now, I believe the best way to view these changes is to clone the
    PR branch, then run `build.sh` in order to host the webserver locally..
    
    ---------
    
    Co-authored-by: Don Acosta <[email protected]>
    Co-authored-by: rlratzel <[email protected]>
    Co-authored-by: Erik Welch <[email protected]>
    4 people authored Oct 3, 2024
    Configuration menu
    Copy the full SHA
    a936327 View commit details
    Browse the repository at this point in the history
  2. Add nx-cugraph introduction notebook to repo (#4677)

    ## Proposed Changes
    
    This PR adds an introduction notebook to the `notebooks/demo` directory
    of the repository. Click the link to view the files directory in the dev
    branch.
    * [The introduction to `nx-cugraph`
    notebook](https://github.com/rapidsai/cugraph/blob/1a70b7ad588bcc1dc6f65af8fe07149ed8083ef0/notebooks/demo/accelerating_networkx.ipynb)
    
    ---------
    
    Co-authored-by: Erik Welch <[email protected]>
    nv-rliu and eriknw authored Oct 3, 2024
    Configuration menu
    Copy the full SHA
    f8b9ac3 View commit details
    Browse the repository at this point in the history
  3. Implementing some of the VDR feedback (#4674)

    Adding some content and navigation options per VDR,
    resolves  rapidsai/graph_dl#594
    resolves rapidsai/graph_dl#593
    
    ---------
    
    Co-authored-by: rlratzel <[email protected]>
    acostadon and rlratzel authored Oct 3, 2024
    Configuration menu
    Copy the full SHA
    e6be367 View commit details
    Browse the repository at this point in the history
  4. Refactor the python function symmetrizing the edgelist (#4649)

    This PR updates the python API to symmetrize the edge list through the
    CAPI for PLC algorithms. This PR also deprecates the legacy python
    function symmetrizing the edge list
    
    closes #4588
    jnke2016 authored Oct 3, 2024
    Configuration menu
    Copy the full SHA
    5fad435 View commit details
    Browse the repository at this point in the history

Commits on Oct 7, 2024

  1. Constrain versions of PyTorch and CI artifacts in CI Runs, upgrade to…

    … dgl 2.4 (#4690)
    
    We were pulling the wrong packages because the PyTorch version constraint wasn't tight enough.  Hopefully these sorts of issues will be resolved in the `cugraph-gnn` repository going forward, where we can pin a specific pytorch version for testing.
    
    Authors:
      - Alex Barghi (https://github.com/alexbarghi-nv)
      - James Lamb (https://github.com/jameslamb)
    
    Approvers:
      - Ray Douglass (https://github.com/raydouglass)
      - https://github.com/jakirkham
      - Brad Rees (https://github.com/BradReesWork)
      - Rick Ratzel (https://github.com/rlratzel)
    
    URL: #4690
    alexbarghi-nv authored Oct 7, 2024
    Configuration menu
    Copy the full SHA
    3789b70 View commit details
    Browse the repository at this point in the history
  2. Updates docs to describe nx-cugraph based on latest updates for 24.10 (

    …#4694)
    
    ## Proposed Changes
    
    This PR contains critical fixes to the cugraph docs pages.
    
    ---------
    
    Co-authored-by: acostadon <[email protected]>
    Co-authored-by: rlratzel <[email protected]>
    Co-authored-by: James Lamb <[email protected]>
    4 people authored Oct 7, 2024
    Configuration menu
    Copy the full SHA
    7733017 View commit details
    Browse the repository at this point in the history
  3. nx-cugraph: add NX_CUGRAPH_AUTOCONFIG=True env var to enable full…

    … zero-code change (#4685)
    
    This is for convenience and sets or updates `NETWORKX` environment variables.
    
    Do we like `NX_CUGRAPH` as the env var name? What should we consider a true value: "True" (case-insensitive) or a non-empty value?
    
    This works with the latest dev version of NetworkX. I have not yet tried it with older NetworkX versions.
    
    Authors:
      - Erik Welch (https://github.com/eriknw)
      - https://github.com/jakirkham
    
    Approvers:
      - Rick Ratzel (https://github.com/rlratzel)
      - Ralph Liu (https://github.com/nv-rliu)
    
    URL: #4685
    eriknw authored Oct 7, 2024
    Configuration menu
    Copy the full SHA
    acf5029 View commit details
    Browse the repository at this point in the history