-
Notifications
You must be signed in to change notification settings - Fork 227
Unify memory resources #2968
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
rapids-bot
merged 28 commits into
rapidsai:main
from
achirkin:fea-unify-memory-resources
Mar 14, 2026
Merged
Unify memory resources #2968
Changes from all commits
Commits
Show all changes
28 commits
Select commit
Hold shift + click to select a range
45e2d49
Rename device_uvector_policy -> device_container_policy and add non-i…
achirkin 65d4570
Declare the new resources in raft handle
achirkin d86638f
Renamed managed policy
achirkin d6788f6
Add raft::resources for pinned and managed resources and the type-era…
achirkin e7bea48
Updated container policies
achirkin 2514621
All but host memory resource are done
achirkin 49735a5
Simplify the implementation
achirkin 22b4048
Make the host container policy use the resource concept
achirkin 557cc8c
Settle down with raft::mr::*et_default_host_resource()
achirkin cc7a4b0
Add some thread-safety
achirkin e77fe2a
Merge branch 'main' into fea-unify-memory-resources
achirkin 866211e
C++17 backwards-compatibility
achirkin c171d84
Merge branch 'main' into fea-unify-memory-resources
achirkin 268eb1b
newline
achirkin 5c718d6
Add raft::mr::device_resource wrapper for cuda::mr::any_resource
achirkin c5ab9c4
Copy semantics and return resource refs
achirkin 6af142e
Rework workspace resources to avoid nesting bridge layers
achirkin ece1990
Fix the argument order in tests
achirkin 4dd256b
Merge branch 'main' into fea-unify-memory-resources
achirkin a26357d
Add explicit conversion through cuda::mr refs to rmm ref
achirkin 2a90680
Switch from rmm host and host_device resource reference wrappers to r…
achirkin 59c3793
Merge branch 'main' into fea-unify-memory-resources
achirkin 3a40d22
Prefer rmm::mr::get_current_device_resource_ref() over rmm::mr::get_c…
achirkin cce4f45
Remove raft pinned and managed memory resources in favor of cuda::mr …
achirkin a3fe671
Merge branch 'main' into fea-unify-memory-resources
achirkin d01efbf
Merge branch 'main' into fea-unify-memory-resources
achirkin f6fc1f1
Update cpp/include/raft/mr/mmap_memory_resource.hpp
achirkin e95c67c
Update cpp/include/raft/mr/mmap_memory_resource.hpp
achirkin File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think RAFT is using C++20 now so it should be safe to use
requireswithout the#ifdefguard?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unfortunately some components of cuvs still use C++17 and it breaks if I remove the #ifdef in this header. I figured, I'd keep it here to keep cuvs passing CI without changes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should get cuVS updated to C++20, RMM will be requiring C++20 soon.