Skip to content

Define raft::mr::device_resource_ref and synchronous_ resource ref aliases - #3159

Draft
bdice wants to merge 3 commits into
NVIDIA:mainfrom
bdice:raft-resource-ref-aliases
Draft

bdice wants to merge 3 commits into
NVIDIA:mainfrom
bdice:raft-resource-ref-aliases

Conversation

@bdice

@bdice bdice commented Sep 29, 2026

Copy link
Copy Markdown
Contributor

Description

Define RAFT's resource ref aliases in raft/mr/host_device_resource.hpp directly over the CCCL types, following the convention in rapidsai/build-planning#337: plain names are stream-ordered and synchronous refs carry a synchronous_ prefix.

Alias CCCL type
raft::mr::device_resource_ref (new, replaces rmm::device_async_resource_ref) cuda::mr::resource_ref<cuda::mr::device_accessible>
raft::mr::synchronous_host_resource_ref (renamed) cuda::mr::synchronous_resource_ref<cuda::mr::host_accessible>
raft::mr::synchronous_host_device_resource_ref (renamed) cuda::mr::synchronous_resource_ref<cuda::mr::host_accessible, cuda::mr::device_accessible>

raft::mr::host_resource_ref and raft::mr::host_device_resource_ref are deprecated. Under the new convention those names will refer to stream-ordered refs, so they can't keep their synchronous meaning. None of cuVS, cuML, cuGraph, cuGraph-GNN, RapidsMPF or cuDF use them.

<rmm/resource_ref.hpp> is no longer included from RAFT. The aliases name the same types as before, so the ABI is unchanged.

Part of rapidsai/build-planning#337.

@bdice bdice added improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels Sep 29, 2026
@copy-pr-bot

copy-pr-bot Bot commented Sep 29, 2026

Copy link
Copy Markdown

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

improvement Improvement / enhancement to an existing function non-breaking Non-breaking change

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

1 participant