Skip to content

Migrate RMM usage to CCCL MR design#1035

Draft
bdice wants to merge 6 commits intoNVIDIA:mainfrom
bdice:rmm-cccl-migration
Draft

Migrate RMM usage to CCCL MR design#1035
bdice wants to merge 6 commits intoNVIDIA:mainfrom
bdice:rmm-cccl-migration

Conversation

@bdice
Copy link
Copy Markdown
Contributor

@bdice bdice commented Apr 3, 2026

Summary

  • Remove dependency on rmm::mr::device_memory_resource base class; resources now satisfy the cuda::mr::resource concept directly
  • Replace shared_ptr<device_memory_resource> with value types and cuda::mr::any_resource<cuda::mr::device_accessible> for type-erased storage
  • Replace set_current_device_resource(ptr) / set_per_device_resource(id, ptr) with set_current_device_resource_ref / set_per_device_resource_ref
  • Remove make_owning_wrapper usage and dynamic_cast on memory resources (no common base class)
  • Add missing thrust/iterator/transform_output_iterator.h include (no longer transitively included via CCCL)

Details

8 files changed, 24 insertions, 41 deletions. C++ build passes (all 62 targets). Cython build failures are pre-existing (missing pylibraft dev headers, unrelated to this change).

Remove dependency on rmm::mr::device_memory_resource base class. Resources
now satisfy the cuda::mr::resource concept directly.

- Replace shared_ptr<device_memory_resource> with value types and
  cuda::mr::any_resource<cuda::mr::device_accessible> for type-erased storage
- Replace set_current_device_resource(ptr) with set_current_device_resource_ref
- Replace set_per_device_resource(id, ptr) with set_per_device_resource_ref
- Remove make_owning_wrapper usage
- Remove dynamic_cast on memory resources (no common base class)
- Remove owning_wrapper.hpp and device_memory_resource.hpp includes
- Add missing thrust/iterator/transform_output_iterator.h include
  (no longer transitively included via CCCL)
@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.

@bdice bdice force-pushed the rmm-cccl-migration branch 4 times, most recently from a624829 to 8fe66e5 Compare April 17, 2026 07:09
@bdice bdice added breaking Introduces a breaking change Feature improvement Improves an existing functionality labels Apr 17, 2026
@bdice bdice force-pushed the rmm-cccl-migration branch 5 times, most recently from 3c4bbbe to 717e877 Compare April 17, 2026 21:07
@bdice bdice force-pushed the rmm-cccl-migration branch from 717e877 to b42797f Compare April 18, 2026 15:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking Introduces a breaking change Feature improvement Improves an existing functionality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant