Migrate stream APIs from rmm::cuda_stream_view to cuda::stream_ref - #1181
Open
bdice wants to merge 2 commits into
Open
Migrate stream APIs from rmm::cuda_stream_view to cuda::stream_ref#1181bdice wants to merge 2 commits into
bdice wants to merge 2 commits into
Conversation
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
19 tasks
bdice
force-pushed
the
cuda-stream-ref
branch
from
September 2, 2026 04:21
9f09f62 to
33c9d4e
Compare
bdice
marked this pull request as ready for review
September 2, 2026 22:55
pentschev
reviewed
Sep 3, 2026
pentschev
left a comment
Member
There was a problem hiding this comment.
Could we update the declaration void wait() declaration to void sync() as part of the migration? I don't think it's currently used anywhere and probably exposed only for completeness, regardless, I think it makes sense to update it (or remove it completely) rather than having a stale one declaration.
bdice
force-pushed
the
cuda-stream-ref
branch
from
September 5, 2026 20:00
6db731c to
11a1656
Compare
rapids-bot Bot
pushed a commit
that referenced
this pull request
Sep 8, 2026
## Summary Use the `get()` compatibility alias added in [RMM #2537](rapidsai/rmm#2537). This spelling is shared by `rmm::cuda_stream_view` and `cuda::stream_ref`. This preserves existing stream types and public APIs while extracting mechanical accessor updates from the broader [stream migration](rapidsai/build-planning#318). It is independently buildable without [RMM #2372](rapidsai/rmm#2372) and leaves the migration PR focused on actual type and signature changes. This updates C++ and Cython raw-stream access to the compatibility spelling without changing the underlying stream-view APIs. Direct `cuda::stream_ref` forwarding remains in [RapidsMPF #1181](#1181). Authors: - Bradley Dice (https://github.com/bdice) Approvers: - Peter Andreas Entschev (https://github.com/pentschev) URL: #1199
bdice
force-pushed
the
cuda-stream-ref
branch
from
September 8, 2026 20:33
11a1656 to
27c134b
Compare
rapids-bot Bot
pushed a commit
that referenced
this pull request
Sep 8, 2026
## Summary Backport #1199 to `release/26.10`. Use the `get()` compatibility alias added in rapidsai/rmm#2537 at raw CUDA stream boundaries without changing the underlying stream-view APIs. This prepares the release branch for the stream API migration in #1181 and is tracked by rapidsai/build-planning#318. Authors: - Bradley Dice (https://github.com/bdice) Approvers: - Richard (Rick) Zamora (https://github.com/rjzamora) URL: #1204
Signed-off-by: Bradley Dice <bdice@bradleydice.com>
bdice
force-pushed
the
cuda-stream-ref
branch
from
September 8, 2026 22:02
27c134b to
6c5d63e
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Track the coordinated migration of stream APIs and call sites from
rmm::cuda_stream_viewto CCCL'scuda::stream_ref. This propagatescuda::stream_refthrough RMM containers and memory resources, RAFT resource and handle APIs, downstream C++ interfaces, Python/Cython bindings, benchmarks, tests, and documentation.This updates RapidsMPF C++ and Python/Cython stream handling to preserve references returned by RMM stream pools and extract raw handles only where required.
Depends on rapidsai/rmm#2372.
Tracked in rapidsai/build-planning#318.
Migrations
cuda::stream_refthrough stream pools, resource accessors, conditionals, and downstream APIs without converting tormm::cuda_stream_viewcuda::stream_refconstructions for default/legacy/per-thread streamsrmm::cuda_stream_default➡️cuda::stream_ref{cudaStream_t{cudaStreamDefault}}rmm::cuda_stream_legacy➡️cuda::stream_ref{cudaStreamLegacy}rmm::cuda_stream_per_thread➡️cuda::stream_ref{cudaStreamPerThread}.get()when calling an API that requires a rawcudaStream_t, including CUDA runtime, library, CUB, and legacy API boundaries (previouslyrmm::cuda_stream_viewusedvalue()).sync()when synchronizing acuda::stream_ref(previouslyrmm::cuda_stream_viewusedsynchronize())