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

Merge branch-24.08 #1

Merged
merged 57 commits into from
Jun 26, 2024
Merged

Conversation

msarahan
Copy link

No description provided.

alexbarghi-nv and others added 30 commits May 14, 2024 14:18
…4355)

Exposes the ability to retain seeds even if they have no outgoing edges (and therefore are not sampled).  Required to fix the current bug in cuGraph-PyG involving batch size and dropping seeds.

Currently, this functionality can't be exposed through the MG Python API (rapidsai#4358) but exposing it through the pylibcugraph API is sufficient to resolve this issue.  This PR does expose it through the SG Python API.

Authors:
  - Alex Barghi (https://github.com/alexbarghi-nv)
  - Seunghwa Kang (https://github.com/seunghwak)

Approvers:
  - Seunghwa Kang (https://github.com/seunghwak)
  - Chuck Hastings (https://github.com/ChuckHastings)
  - Naim (https://github.com/naimnv)
  - Rick Ratzel (https://github.com/rlratzel)

URL: rapidsai#4355
Addresses rapidsai#4187 

This PR makes improvements to old MG testing conventions used in these testing directories:
 - centrality
 - comms
 - community
 - components
 - core
 - internals

The goals of this PR is to improve readability and use of the MG tests. Changes are similar to rapidsai#4197 
> Instead of using nested fixtures. eg. `input_expected_output -> input_combo -> fixture_params` which can be confusing, the `@pytest.mark.parametrize` marker is used to iterate through combinations of parameters used for testing. The fixtures are also replaced by functions used to create SG and MG graphs.

By using the Datasets API (which now supports MG Graphs thanks to @huiyuxie), the number of imports and `testing.utils` functions can be significantly reduced.

Authors:
  - Ralph Liu (https://github.com/nv-rliu)

Approvers:
  - Rick Ratzel (https://github.com/rlratzel)

URL: rapidsai#4244
Shouldn't be constructing rmm::exec_policy from another rmm::exec_policy.  Recent raft change causes this to not compile, but we shouldn't have been doing this in the first place.

Authors:
  - Chuck Hastings (https://github.com/ChuckHastings)

Approvers:
  - Seunghwa Kang (https://github.com/seunghwak)
  - Naim (https://github.com/naimnv)

URL: rapidsai#4417
…sai#4411)

Added to the MTMG library support for results that contain a vertex pair and a result.  This will allow for support for all of the similarity algorithms.

Added an MTMG test that demonstrates how to call all-pairs Jaccard.

Also cleaned up the cmake files to better find ucx/ucs/ucp.

Authors:
  - Chuck Hastings (https://github.com/ChuckHastings)
  - Ralph Liu (https://github.com/nv-rliu)

Approvers:
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)
  - Seunghwa Kang (https://github.com/seunghwak)

URL: rapidsai#4411
…ample (rapidsai#4421)

rapidsai#4355 accidentally added an expensive check to SG uniform neighbor sample.  This PR reverts that addition.

Authors:
  - Alex Barghi (https://github.com/alexbarghi-nv)

Approvers:
  - Rick Ratzel (https://github.com/rlratzel)

URL: rapidsai#4421
- Support [`torch_geometric.EdgeIndex`](https://pytorch-geometric.readthedocs.io/en/latest/generated/torch_geometric.edge_index.EdgeIndex.html) in models.
- Drop support for PyG < 2.5

Breaking changes: 
The `csc` argument in `model.forward()` has been renamed to `edge_index` to align with upstream models. For now, users can still pass in CSC tuples (generated from `to_csc` call) as `edge_index`.

Authors:
  - Tingyu Wang (https://github.com/tingyu66)
  - Alex Barghi (https://github.com/alexbarghi-nv)

Approvers:
  - Alex Barghi (https://github.com/alexbarghi-nv)
  - Jake Awe (https://github.com/AyodeAwe)

URL: rapidsai#4335
…#4425)

Doxygen documentation warnings exist in the documentation builds.  This fixes these errors.

Closes rapidsai#4328

Authors:
  - Chuck Hastings (https://github.com/ChuckHastings)

Approvers:
  - Seunghwa Kang (https://github.com/seunghwak)

URL: rapidsai#4425
…apidsai#4426)

Python property graph class does some expensive dask calls to determine if a graph is a multi-graph.

This PR exposes to the C API and the PLC layer the graph_view method that counts the number of multi-edges in the graph.  Specifically, the function returns the number of extra edges exist.  So if the edge `(u,v)` exists `k` times, that edge contributes `k-1` to the return value.

If the return value of this function is greater than 0 then the graph is a multi-graph.  If the return value is 0 then while the graph might be labeled a multi-graph, there are no multi-edges so it could be treated as a graph.

Closes rapidsai#2417 

Note that the property graph python code would still need to be modified to use this function.

Authors:
  - Chuck Hastings (https://github.com/ChuckHastings)

Approvers:
  - Seunghwa Kang (https://github.com/seunghwak)
  - Joseph Nke (https://github.com/jnke2016)
  - Alex Barghi (https://github.com/alexbarghi-nv)

URL: rapidsai#4426
Fixes bug seen in MG tests due to incorrect call to `enable_batch`

Authors:
  - Ralph Liu (https://github.com/nv-rliu)

Approvers:
  - Alex Barghi (https://github.com/alexbarghi-nv)

URL: rapidsai#4429
…apidsai#4415)

Supersedes rapidsai#4271

There are some tests and internal usages of APIs that emit these warnings still. I don't know the best way to handle these warnings, but this PR ensures that _new_ `FutureWarning`s and `DeprecationWarning`s will raise an error in the CI

Authors:
  - Matthew Roeschke (https://github.com/mroeschke)

Approvers:
  - Rick Ratzel (https://github.com/rlratzel)

URL: rapidsai#4415
* Remove the devcontainer when the VSCode window closes
* Adds a descriptive name to the running container:
  ```shell
  $ docker ps -a
  CONTAINER ID   IMAGE            ...  NAMES
  0dbb364fe544   vsc-cugraph-...  ...  rapids-cugraph-24.06-cuda12.2-conda
  
  $ docker rm -f rapids-cugraph-24.06-cuda12.2-conda
  ```

Authors:
  - Paul Taylor (https://github.com/trxcllnt)
  - Ralph Liu (https://github.com/nv-rliu)

Approvers:
  - Ray Douglass (https://github.com/raydouglass)

URL: rapidsai#4361
Closes rapidsai#4285

I'll report back if it get to render locally. Ran out of mem building the library on my ec2 machine (g5.2xlarge: 32 Gb RAM) but I did just build cudf. I'll try again soon.

~~Also brainstorming here and I probably should upstream this to the rapids CI process. Would be nice to have /ok to test docs which just builds the docs for this PR~~ created nv-gha-runners/nvidia-runners#25

I tried building the docs locally and got

```
WARNING: [autosummary] failed to import cugraph.jaccard_w.
Possible hints:
* AttributeError: module 'cugraph' has no attribute 'jaccard_w'
* ImportError: 
* ModuleNotFoundError: No module named 'cugraph.jaccard_w'
WARNING: [autosummary] failed to import cugraph.overlap_w.
Possible hints:
* ModuleNotFoundError: No module named 'cugraph.overlap_w'
* ImportError: 
* AttributeError: module 'cugraph' has no attribute 'overlap_w'
WARNING: [autosummary] failed to import cugraph.sorensen_w.
Possible hints:
* ModuleNotFoundError: No module named 'cugraph.sorensen_w'
* ImportError: 
* AttributeError: module 'cugraph' has no attribute 'sorensen_w'
```

Think this comes from https://github.com/rapidsai/cugraph/blob/abe69c0419b67b567d3c8fce91ee1a062d53e385/docs/cugraph/source/api_docs/cugraph/link_prediction.rst#L14

but I may have messed up my build

Authors:
  - Ray Bell (https://github.com/raybellwaves)
  - Rick Ratzel (https://github.com/rlratzel)

Approvers:
  - Rick Ratzel (https://github.com/rlratzel)

URL: rapidsai#4323
Fix a bug in kv_store_t implementation

Authors:
  - Naim (https://github.com/naimnv)

Approvers:
  - Chuck Hastings (https://github.com/ChuckHastings)

URL: rapidsai#4434
Believe the path suggested previously is outdated.

Authors:
  - Ray Bell (https://github.com/raybellwaves)
  - Don Acosta (https://github.com/acostadon)
  - Rick Ratzel (https://github.com/rlratzel)

Approvers:
  - Don Acosta (https://github.com/acostadon)

URL: rapidsai#4327
Restructure to pass stream instead of handle and synchronize appropriately.

Closes rapidsai#4236

Authors:
  - Chuck Hastings (https://github.com/ChuckHastings)

Approvers:
  - Seunghwa Kang (https://github.com/seunghwak)

URL: rapidsai#4275
This PR restructures the current sampling primitive implementation and adds biased sampling support.

Closes rapidsai#4288

Authors:
  - Seunghwa Kang (https://github.com/seunghwak)
  - Chuck Hastings (https://github.com/ChuckHastings)

Approvers:
  - Chuck Hastings (https://github.com/ChuckHastings)

URL: rapidsai#4430
Closes rapidsai#4440

This PR updates `enable_batch` to use the updated implementation for `replicate_edgelist`.

Authors:
  - Ralph Liu (https://github.com/nv-rliu)

Approvers:
  - Rick Ratzel (https://github.com/rlratzel)
  - Joseph Nke (https://github.com/jnke2016)

URL: rapidsai#4441
Update size_ field of kv_cuco_store_t with correct values.

Authors:
  - Naim (https://github.com/naimnv)

Approvers:
  - Chuck Hastings (https://github.com/ChuckHastings)
  - Seunghwa Kang (https://github.com/seunghwak)

URL: rapidsai#4444
This PR

1. Performs edge triangle count in chunk
2. Enables k - 1 core optimization
3. Add C++ tests for edge triangle count
4. Move edge triangle count to the stable API
5. Implement MG edge triangle count and add tests
6. Update 'mg_graph_to_sg_graph' to support 'edge_ids' along with tests

closes rapidsai#4370
closes rapidsai#4371

Authors:
  - Joseph Nke (https://github.com/jnke2016)
  - Rick Ratzel (https://github.com/rlratzel)

Approvers:
  - Chuck Hastings (https://github.com/ChuckHastings)
  - Seunghwa Kang (https://github.com/seunghwak)

URL: rapidsai#4382
**[WIP]** I'm using this PR to debug/add support for `DASK_DATAFRAME__QUERY_PLANNING=True`.

**NOTES**:
- Depends on dask/dask-expr#1041 [Merged]
- Depends on dask/dask-expr#1044

Authors:
  - Richard (Rick) Zamora (https://github.com/rjzamora)

Approvers:
  - Rick Ratzel (https://github.com/rlratzel)
  - Ray Douglass (https://github.com/raydouglass)

URL: rapidsai#4325
We already have the built package, so test that instead of an editable install. This helps avoid having to install the build dependencies for nx-cugraph at test time.

Authors:
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)

Approvers:
  - Bradley Dice (https://github.com/bdice)
  - Ray Douglass (https://github.com/raydouglass)
  - Rick Ratzel (https://github.com/rlratzel)

URL: rapidsai#4442
This notebook will be used to demontstrate how to  use nx-cugraph and show the speed-up.

Authors:
  - Don Acosta (https://github.com/acostadon)

Approvers:
  - Brad Rees (https://github.com/BradReesWork)

URL: rapidsai#4366
Similar to rapidsai/cudf#15552, we are testing [building RAPIDS with CCCL's main branch](NVIDIA/cccl#1667) to get ahead of any breaking changes.

Authors:
  - Paul Taylor (https://github.com/trxcllnt)
  - Ralph Liu (https://github.com/nv-rliu)
  - Seunghwa Kang (https://github.com/seunghwak)
  - Ray Bell (https://github.com/raybellwaves)

Approvers:
  - Chuck Hastings (https://github.com/ChuckHastings)
  - Seunghwa Kang (https://github.com/seunghwak)
  - Jake Awe (https://github.com/AyodeAwe)

URL: rapidsai#4404
alexbarghi-nv and others added 22 commits May 30, 2024 22:40
 Forward Merge branch-24.06 into branch-24.08
This PR fixes bugs and `FutureWarnings` that were causing the nightly MG test suite to fail.

Authors:
  - Ralph Liu (https://github.com/nv-rliu)

Approvers:
  - Rick Ratzel (https://github.com/rlratzel)

URL: rapidsai#4450
rapidsai#4053 changed the location of the build directory for python code, but the build.sh script was cleaning up the old location.

This PR updates the build script to address this.

Authors:
  - Chuck Hastings (https://github.com/ChuckHastings)

Approvers:
  - Bradley Dice (https://github.com/bdice)
  - Rick Ratzel (https://github.com/rlratzel)

URL: rapidsai#4453
Forward-merge branch-24.06 into branch-24.08
Defines a heterogeneous renumbering function that renumbers sampled edge list vertex & edge IDs to consecutive integers per vertex & edge type, respectively.

The renumbered edges are sorted. New functions that sort & **compress** will be added later.

Authors:
  - Seunghwa Kang (https://github.com/seunghwak)

Approvers:
  - Alex Barghi (https://github.com/alexbarghi-nv)
  - Chuck Hastings (https://github.com/ChuckHastings)

URL: rapidsai#4463
Makes some minor updates and clarifications to the cuGraph-PyG API docs.

Authors:
  - Alex Barghi (https://github.com/alexbarghi-nv)

Approvers:
  - Don Acosta (https://github.com/acostadon)
  - Rick Ratzel (https://github.com/rlratzel)

URL: rapidsai#4460
This PR overhauls how `ops-codeowners` reviews are handled.

`ops-codeowners` is replaced by `ci-codeowners` &
`packaging-codeowners`. The coverage of files is expanded as well.

Additionally, the process will change: reviews will be assigned to a
member of the teams instead of a manual request to `ops-codeowners`.

---------

Co-authored-by: Bradley Dice <[email protected]>
…#4475)

Addresses rapidsai#4474 

Currently `openmpi=5.0.3-hfd7b305_105` is blocking our CI `cpp_build`
job.

Most likely introduced by this PR:
conda-forge/openmpi-feedstock#158

This PR will unblock cugraph development until the issues are fixed.
Once that happens, the version pinning should be removed.
…sai#4464)

PyTorch 2.2+ is incompatible with the NCCL version on our containers.
Normally, this would not be an issue, but there is a bug in CuPy that
loads the system NCCL instead of the user NCCL. This PR binds the
PyTorch test dependency version to get around this issue.

---------

Co-authored-by: Bradley Dice <[email protected]>
Co-authored-by: Ralph Liu <[email protected]>
Co-authored-by: James Lamb <[email protected]>
compute cosine similarity for vertex pairs

Authors:
  - Naim (https://github.com/naimnv)

Approvers:
  - Seunghwa Kang (https://github.com/seunghwak)

URL: rapidsai#4482
Forward-merge branch-24.08 into branch-24.06
Addresses rapidsai/graph_dl#500

This PR adds a marker to skip `test_dgl_uniform_sampler_mg.py` in our nightly workflow on draco to unblock other tests that are waiting to be run.

This will be marked "Skipped" while it is being investigated.

Authors:
  - Ralph Liu (https://github.com/nv-rliu)

Approvers:
  - Rick Ratzel (https://github.com/rlratzel)

URL: rapidsai#4479
This PR removes text builds of the documentation, which we do not
currently use for anything. Contributes to
rapidsai/build-planning#71.

---------

Co-authored-by: Bradley Dice <[email protected]>
Co-authored-by: Ralph Liu <[email protected]>
@msarahan msarahan merged commit e3af2c8 into vyasr:feat/cpp_wheel Jun 26, 2024
1 of 2 checks passed
@msarahan msarahan deleted the feat/cpp_wheel branch June 26, 2024 21:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.