Skip to content

Migrate RMM usage to CCCL MR design#22008

Draft
bdice wants to merge 2 commits intorapidsai:mainfrom
bdice:rmm-cccl-migration
Draft

Migrate RMM usage to CCCL MR design#22008
bdice wants to merge 2 commits intorapidsai:mainfrom
bdice:rmm-cccl-migration

Conversation

@bdice
Copy link
Copy Markdown
Contributor

@bdice bdice commented Apr 3, 2026

Summary

  • Replace device_memory_resource* with device_async_resource_ref across all C++ headers, sources, benchmarks, examples, and tests.
  • In Cython .pxd declarations, change device_memory_resource *mr parameters to device_async_resource_ref mr (value type). In .pyx files, replace mr.get_mr() calls with mr.c_ref.value().
  • Remove cudf::set_current_device_resource (pointer-based) wrapper, keeping only the ref-based set_current_device_resource_ref. Update return types of set/reset_current_device_resource_ref to cuda::mr::any_resource<cuda::mr::device_accessible>.
  • In host_memory.cpp, remove device_memory_resource inheritance from pinned_pool_with_fallback_memory_resource, remove the forward declaration workaround for rmm::mr::pool_memory_resource (no longer templated), and wrap non-copyable state in shared_ptr to satisfy the any_resource copyability requirement.

Part of rapidsai/rmm#2011

Replace device_memory_resource* with device_async_resource_ref across
all C++ headers, sources, benchmarks, examples, and tests. In Cython
.pxd declarations, change device_memory_resource *mr parameters to
device_async_resource_ref mr (value type). In .pyx files, replace
mr.get_mr() calls with mr.c_ref.value().

Remove cudf::set_current_device_resource (pointer-based) wrapper,
keeping only the ref-based set_current_device_resource_ref. Update
return types of set/reset_current_device_resource_ref to
cuda::mr::any_resource<cuda::mr::device_accessible>.

In host_memory.cpp, remove device_memory_resource inheritance from
pinned_pool_with_fallback_memory_resource, remove the forward
declaration workaround for rmm::mr::pool_memory_resource (no longer
templated), and wrap non-copyable state in shared_ptr to satisfy
the any_resource copyability requirement.

Part of rapidsai/rmm#2011
@copy-pr-bot
Copy link
Copy Markdown

copy-pr-bot bot commented Apr 3, 2026

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.

@github-actions github-actions bot added libcudf Affects libcudf (C++/CUDA) code. Python Affects Python cuDF API. pylibcudf Issues specific to the pylibcudf package labels Apr 3, 2026
@GPUtester GPUtester moved this to In Progress in cuDF Python Apr 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

libcudf Affects libcudf (C++/CUDA) code. pylibcudf Issues specific to the pylibcudf package Python Affects Python cuDF API.

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

2 participants