Skip to content

Forward-merge branch-25.06 into branch-25.08 #5079

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

Merged
merged 13 commits into from
May 19, 2025

Conversation

gforsyth
Copy link
Contributor

Fixes forward merger xref #5071

rlratzel and others added 13 commits May 14, 2025 02:16
…apidsai#5068)

@TomAugspurger pointed out that recent CI failures are likely due to a change in Cython documented [here](cython/cython#6841), which cause these breakages [here](https://github.com/rapidsai/cugraph/actions/runs/14923270406/job/41922482100)

This PR pins Cython to a version >3.0.0 but not 3.1.0 to avoid that version.

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

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

URL: rapidsai#5068
@ChuckHastings

Now this function is device-callable, so you can use this function to explicitly specify a return type of funtors that involve multiple tuple types.

You can do something like this.

```
using edge_property_tuple_t = std::conditional_t<std::is_same_v<edge_property_t, cuda::std::nullopt_t>, thrust::tuple<>, std::is_arithmetic_v<edge_property_t>, thrust::tuple<edge_property_t>, edge_property_t>>;
using label_tuple_t = std::conditional_t<std::is_same_v<label_t, cuda::std::nullopt_t>, thrust::tuple<>, thrust::tuple<label_t>>;
using return_type = decltype(thrust_tuple_cat(thrust::tuple<vertex_t, vertex_t>{}, edge_property_tuple_t{}, label_tuple_t{}));
```

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

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

URL: rapidsai#5070
We use `pytest-xdist` in almost every RAPIDS repository but haven't enabled it for cuGraph yet. Test times are long, so we should try to parallelize Python tests.

The [last successful CI run](https://github.com/rapidsai/cugraph/actions/runs/14391805813/job/40361124281#step:9:8233) took a long time:
```
3427 passed, 905 skipped, 51 deselected, 833 warnings in 5767.53s (1:36:07)
```

I successfully ran with `--numprocesses=8 --dist=worksteal` on my local machine:
```
3456 passed, 909 skipped, 1186 warnings in 881.19s (0:14:41)
```
and [CI got similar results](https://github.com/rapidsai/cugraph/actions/runs/14409723669/job/40415873062?pr=5027#step:9:13339):
```
3427 passed, 905 skipped, 887 warnings in 901.83s (0:15:01)
```

This suggests that there isn't too much time lost in the overhead of parallelizing the test jobs -- it's about 6.4x faster overall.

Our lowest-memory CI node has 24 GB of GPU memory. There are some tests that appear to spawn multiple processes (probably dask or MG tests) and the highest overall GPU memory usage I saw was ~18 GB -- still safely below the cap of 24 GB.

The maximum memory usage I saw was ~1830 MB for any given worker. I saw 3 workers at ~1830 MB and 5 workers at ~450-600 MB for most of the test time. The memory usage seemed to be monotonically increasing for each worker through the test run, which makes me think that resources (perhaps large graphs from datasets?) are not being cleaned up after they are used for a test.

Authors:
  - Bradley Dice (https://github.com/bdice)

Approvers:
  - Rick Ratzel (https://github.com/rlratzel)
  - https://github.com/jakirkham
  - James Lamb (https://github.com/jameslamb)

URL: rapidsai#5027
This quotes `head_rev` to ensure that commits with leading zeros in the git SHA include those zeros in the output package name.

xref: rapidsai/build-planning#176

Authors:
  - Bradley Dice (https://github.com/bdice)

Approvers:
  - James Lamb (https://github.com/jameslamb)

URL: rapidsai#5069
Set more fatbin compression flags to maintain existing binary sizes

Authors:
  - Robert Maynard (https://github.com/robertmaynard)
  - Bradley Dice (https://github.com/bdice)

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

URL: rapidsai#5064
Contributes to rapidsai/build-planning#177

This PR updates the clang version to 20.

Authors:
  - Bradley Dice (https://github.com/bdice)

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

URL: rapidsai#5073
Removes remaining cuGraph-DGL code from this repository, including the `FeatureStore` which causes issues with circular dependencies.

Should be merged after rapidsai/cugraph-gnn#199

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

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

URL: rapidsai#5061
…property_t to a runtime parameter (rapidsai#5074)

* `edge_src|dst_property_t` takes `vertex_t`, `T`, and `bool store_transposed` while `edge_property_t takes` just `edge_t` and `T`. This PR resolves this inconsistency and removes a non-type template parameter `bool store_transposed` from `edge_src|dst_property_t`.

Closes rapidsai#4916

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

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

URL: rapidsai#5074
)

This PR reverts shared-workflows branches to `branch-25.06` and ensures builds use CUDA 12.8.

CUDA 12.9 will be used in the test matrix but not for builds in RAPIDS 25.06. See rapidsai/build-planning#173 (comment) for more information.

Authors:
  - Bradley Dice (https://github.com/bdice)
  - https://github.com/jakirkham
  - Gil Forsyth (https://github.com/gforsyth)

Approvers:
  - Jake Awe (https://github.com/AyodeAwe)
  - https://github.com/jakirkham

URL: rapidsai#5075
@gforsyth gforsyth added improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels May 19, 2025
@gforsyth gforsyth requested review from a team as code owners May 19, 2025 21:03
@gforsyth gforsyth requested a review from BradReesWork May 19, 2025 21:03
@gforsyth gforsyth added improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels May 19, 2025
@gforsyth gforsyth requested a review from KyleFromNVIDIA May 19, 2025 21:03
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@AyodeAwe AyodeAwe merged commit f77c5f4 into rapidsai:branch-25.08 May 19, 2025
21 of 23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
benchmarks ci CMake conda cuGraph improvement Improvement / enhancement to an existing function non-breaking Non-breaking change python
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants