[libcu++] Rename memory resource concepts to indicate asynchronous allocations are the default ones#5313
Merged
miscco merged 13 commits intoNVIDIA:mainfrom Aug 5, 2025
Conversation
Contributor
|
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. |
Contributor
Author
|
/ok to test 8580aca |
8580aca to
010f73f
Compare
010f73f to
c8f3324
Compare
Contributor
Author
|
/ok to test 010f73f |
Contributor
Author
|
/ok to test c8f3324 |
miscco
approved these changes
Jul 18, 2025
| _Same_as(void*) __res.allocate_async(__bytes, __alignment, __stream), | ||
| _Same_as(void) __res.deallocate_async(__ptr, __bytes, __alignment, __stream), | ||
| requires(resource<_Resource>)); | ||
| requires(synchronous_resource<_Resource>)); |
Contributor
There was a problem hiding this comment.
Last call for whether we want to drop this
Contributor
🟨 CI finished in 1h 55m: Pass: 87%/205 | Total: 4d 01h | Avg: 28m 32s | Max: 1h 39m | Hits: 82%/328913
|
| Project | |
|---|---|
| CCCL Infrastructure | |
| CCCL Packaging | |
| +/- | libcu++ |
| CUB | |
| Thrust | |
| +/- | CUDA Experimental |
| stdpar | |
| python | |
| CCCL C Parallel Library | |
| Catch2Helper |
Modifications in project or dependencies?
| Project | |
|---|---|
| CCCL Infrastructure | |
| +/- | CCCL Packaging |
| +/- | libcu++ |
| +/- | CUB |
| +/- | Thrust |
| +/- | CUDA Experimental |
| +/- | stdpar |
| +/- | python |
| +/- | CCCL C Parallel Library |
| +/- | Catch2Helper |
🏃 Runner counts (total jobs: 205)
| # | Runner |
|---|---|
| 128 | linux-amd64-cpu16 |
| 23 | windows-amd64-cpu16 |
| 14 | linux-amd64-gpu-h100-latest-1 |
| 14 | linux-amd64-gpu-rtxa6000-latest-1 |
| 12 | linux-arm64-cpu16 |
| 11 | linux-amd64-gpu-rtx2080-latest-1 |
| 3 | linux-amd64-gpu-rtx4090-latest-1 |
Contributor
Author
|
/ok to test cbddb96 |
Contributor
🟨 CI finished in 2h 25m: Pass: 99%/205 | Total: 4d 02h | Avg: 28m 41s | Max: 1h 43m | Hits: 86%/336825
|
| Project | |
|---|---|
| CCCL Infrastructure | |
| CCCL Packaging | |
| +/- | libcu++ |
| +/- | CUB |
| Thrust | |
| +/- | CUDA Experimental |
| stdpar | |
| python | |
| CCCL C Parallel Library | |
| Catch2Helper |
Modifications in project or dependencies?
| Project | |
|---|---|
| CCCL Infrastructure | |
| +/- | CCCL Packaging |
| +/- | libcu++ |
| +/- | CUB |
| +/- | Thrust |
| +/- | CUDA Experimental |
| +/- | stdpar |
| +/- | python |
| +/- | CCCL C Parallel Library |
| +/- | Catch2Helper |
🏃 Runner counts (total jobs: 205)
| # | Runner |
|---|---|
| 128 | linux-amd64-cpu16 |
| 23 | windows-amd64-cpu16 |
| 14 | linux-amd64-gpu-h100-latest-1 |
| 14 | linux-amd64-gpu-rtxa6000-latest-1 |
| 12 | linux-arm64-cpu16 |
| 11 | linux-amd64-gpu-rtx2080-latest-1 |
| 3 | linux-amd64-gpu-rtx4090-latest-1 |
Contributor
Author
|
/ok to test 9d6c93d |
Contributor
🟨 CI finished in 1h 54m: Pass: 89%/209 | Total: 3d 21h | Avg: 26m 44s | Max: 1h 37m | Hits: 85%/319261
|
| Project | |
|---|---|
| CCCL Infrastructure | |
| CCCL Packaging | |
| +/- | libcu++ |
| +/- | CUB |
| Thrust | |
| +/- | CUDA Experimental |
| stdpar | |
| python | |
| CCCL C Parallel Library | |
| Catch2Helper |
Modifications in project or dependencies?
| Project | |
|---|---|
| CCCL Infrastructure | |
| +/- | CCCL Packaging |
| +/- | libcu++ |
| +/- | CUB |
| +/- | Thrust |
| +/- | CUDA Experimental |
| +/- | stdpar |
| +/- | python |
| +/- | CCCL C Parallel Library |
| +/- | Catch2Helper |
🏃 Runner counts (total jobs: 209)
| # | Runner |
|---|---|
| 128 | linux-amd64-cpu16 |
| 23 | windows-amd64-cpu16 |
| 16 | linux-amd64-gpu-l4-latest-1 |
| 12 | linux-arm64-cpu16 |
| 11 | linux-amd64-gpu-rtx2080-latest-1 |
| 10 | linux-amd64-gpu-h100-latest-1 |
| 6 | linux-amd64-gpu-rtxa6000-latest-1 |
| 3 | linux-amd64-gpu-rtx4090-latest-1 |
Contributor
Author
|
/ok to test 43c7f4b |
Contributor
🟨 CI finished in 1h 51m: Pass: 98%/209 | Total: 4d 00h | Avg: 27m 37s | Max: 1h 36m | Hits: 85%/318019
|
| Project | |
|---|---|
| CCCL Infrastructure | |
| CCCL Packaging | |
| +/- | libcu++ |
| +/- | CUB |
| Thrust | |
| +/- | CUDA Experimental |
| stdpar | |
| python | |
| CCCL C Parallel Library | |
| Catch2Helper |
Modifications in project or dependencies?
| Project | |
|---|---|
| CCCL Infrastructure | |
| +/- | CCCL Packaging |
| +/- | libcu++ |
| +/- | CUB |
| +/- | Thrust |
| +/- | CUDA Experimental |
| +/- | stdpar |
| +/- | python |
| +/- | CCCL C Parallel Library |
| +/- | Catch2Helper |
🏃 Runner counts (total jobs: 209)
| # | Runner |
|---|---|
| 128 | linux-amd64-cpu16 |
| 23 | windows-amd64-cpu16 |
| 16 | linux-amd64-gpu-l4-latest-1 |
| 12 | linux-arm64-cpu16 |
| 11 | linux-amd64-gpu-rtx2080-latest-1 |
| 10 | linux-amd64-gpu-h100-latest-1 |
| 6 | linux-amd64-gpu-rtxa6000-latest-1 |
| 3 | linux-amd64-gpu-rtx4090-latest-1 |
Contributor
Author
|
/ok to test b92102e |
Contributor
🟩 CI finished in 1h 07m: Pass: 100%/209 | Total: 1d 13h | Avg: 10m 46s | Max: 34m 15s | Hits: 96%/319261
|
| Project | |
|---|---|
| CCCL Infrastructure | |
| CCCL Packaging | |
| +/- | libcu++ |
| +/- | CUB |
| Thrust | |
| +/- | CUDA Experimental |
| stdpar | |
| python | |
| CCCL C Parallel Library | |
| Catch2Helper |
Modifications in project or dependencies?
| Project | |
|---|---|
| CCCL Infrastructure | |
| +/- | CCCL Packaging |
| +/- | libcu++ |
| +/- | CUB |
| +/- | Thrust |
| +/- | CUDA Experimental |
| +/- | stdpar |
| +/- | python |
| +/- | CCCL C Parallel Library |
| +/- | Catch2Helper |
🏃 Runner counts (total jobs: 209)
| # | Runner |
|---|---|
| 128 | linux-amd64-cpu16 |
| 23 | windows-amd64-cpu16 |
| 16 | linux-amd64-gpu-l4-latest-1 |
| 12 | linux-arm64-cpu16 |
| 11 | linux-amd64-gpu-rtx2080-latest-1 |
| 10 | linux-amd64-gpu-h100-latest-1 |
| 6 | linux-amd64-gpu-rtxa6000-latest-1 |
| 3 | linux-amd64-gpu-rtx4090-latest-1 |
b92102e to
0eb1c6a
Compare
Contributor
Author
|
/ok to test 0eb1c6a |
Contributor
🟩 CI finished in 1h 24m: Pass: 100%/209 | Total: 1d 12h | Avg: 10m 36s | Max: 1h 02m | Hits: 97%/319261
|
| Project | |
|---|---|
| CCCL Infrastructure | |
| CCCL Packaging | |
| +/- | libcu++ |
| +/- | CUB |
| Thrust | |
| +/- | CUDA Experimental |
| stdpar | |
| python | |
| CCCL C Parallel Library | |
| Catch2Helper |
Modifications in project or dependencies?
| Project | |
|---|---|
| CCCL Infrastructure | |
| +/- | CCCL Packaging |
| +/- | libcu++ |
| +/- | CUB |
| +/- | Thrust |
| +/- | CUDA Experimental |
| +/- | stdpar |
| +/- | python |
| +/- | CCCL C Parallel Library |
| +/- | Catch2Helper |
🏃 Runner counts (total jobs: 209)
| # | Runner |
|---|---|
| 128 | linux-amd64-cpu16 |
| 23 | windows-amd64-cpu16 |
| 16 | linux-amd64-gpu-l4-latest-1 |
| 12 | linux-arm64-cpu16 |
| 11 | linux-amd64-gpu-rtx2080-latest-1 |
| 10 | linux-amd64-gpu-h100-latest-1 |
| 6 | linux-amd64-gpu-rtxa6000-latest-1 |
| 3 | linux-amd64-gpu-rtx4090-latest-1 |
0eb1c6a to
e83f980
Compare
Contributor
Author
|
/ok to test e83f980 |
295f411 to
9256af7
Compare
Contributor
🟩 CI finished in 2h 01m: Pass: 100%/210 | Total: 4d 01h | Avg: 27m 57s | Max: 1h 51m | Hits: 86%/319510
|
| Project | |
|---|---|
| CCCL Infrastructure | |
| CCCL Packaging | |
| +/- | libcu++ |
| +/- | CUB |
| Thrust | |
| +/- | CUDA Experimental |
| stdpar | |
| python | |
| CCCL C Parallel Library | |
| Catch2Helper |
Modifications in project or dependencies?
| Project | |
|---|---|
| CCCL Infrastructure | |
| +/- | CCCL Packaging |
| +/- | libcu++ |
| +/- | CUB |
| +/- | Thrust |
| +/- | CUDA Experimental |
| +/- | stdpar |
| +/- | python |
| +/- | CCCL C Parallel Library |
| +/- | Catch2Helper |
🏃 Runner counts (total jobs: 210)
| # | Runner |
|---|---|
| 128 | linux-amd64-cpu16 |
| 23 | windows-amd64-cpu16 |
| 17 | linux-amd64-gpu-l4-latest-1 |
| 12 | linux-arm64-cpu16 |
| 11 | linux-amd64-gpu-rtx2080-latest-1 |
| 10 | linux-amd64-gpu-h100-latest-1 |
| 6 | linux-amd64-gpu-rtxa6000-latest-1 |
| 3 | linux-amd64-gpu-rtx4090-latest-1 |
Contributor
🟩 CI finished in 1h 32m: Pass: 100%/210 | Total: 2d 05h | Avg: 15m 25s | Max: 1h 30m | Hits: 90%/321009
|
| Project | |
|---|---|
| CCCL Infrastructure | |
| CCCL Packaging | |
| +/- | libcu++ |
| +/- | CUB |
| Thrust | |
| +/- | CUDA Experimental |
| stdpar | |
| python | |
| CCCL C Parallel Library | |
| Catch2Helper |
Modifications in project or dependencies?
| Project | |
|---|---|
| CCCL Infrastructure | |
| +/- | CCCL Packaging |
| +/- | libcu++ |
| +/- | CUB |
| +/- | Thrust |
| +/- | CUDA Experimental |
| +/- | stdpar |
| +/- | python |
| +/- | CCCL C Parallel Library |
| +/- | Catch2Helper |
🏃 Runner counts (total jobs: 210)
| # | Runner |
|---|---|
| 128 | linux-amd64-cpu16 |
| 23 | windows-amd64-cpu16 |
| 17 | linux-amd64-gpu-l4-latest-1 |
| 12 | linux-arm64-cpu16 |
| 11 | linux-amd64-gpu-rtx2080-latest-1 |
| 10 | linux-amd64-gpu-h100-latest-1 |
| 6 | linux-amd64-gpu-rtxa6000-latest-1 |
| 3 | linux-amd64-gpu-rtx4090-latest-1 |
Contributor
🟩 CI finished in 1h 54m: Pass: 100%/210 | Total: 4d 12h | Avg: 31m 07s | Max: 1h 46m | Hits: 74%/321093
|
| Project | |
|---|---|
| CCCL Infrastructure | |
| CCCL Packaging | |
| +/- | libcu++ |
| +/- | CUB |
| Thrust | |
| +/- | CUDA Experimental |
| stdpar | |
| python | |
| CCCL C Parallel Library | |
| Catch2Helper |
Modifications in project or dependencies?
| Project | |
|---|---|
| CCCL Infrastructure | |
| +/- | CCCL Packaging |
| +/- | libcu++ |
| +/- | CUB |
| +/- | Thrust |
| +/- | CUDA Experimental |
| +/- | stdpar |
| +/- | python |
| +/- | CCCL C Parallel Library |
| +/- | Catch2Helper |
🏃 Runner counts (total jobs: 210)
| # | Runner |
|---|---|
| 128 | linux-amd64-cpu16 |
| 23 | windows-amd64-cpu16 |
| 17 | linux-amd64-gpu-l4-latest-1 |
| 12 | linux-arm64-cpu16 |
| 11 | linux-amd64-gpu-rtx2080-latest-1 |
| 10 | linux-amd64-gpu-h100-latest-1 |
| 6 | linux-amd64-gpu-rtxa6000-latest-1 |
| 3 | linux-amd64-gpu-rtx4090-latest-1 |
miscco
approved these changes
Aug 4, 2025
cudax/include/cuda/experimental/__memory_resource/managed_memory_resource.cuh
Outdated
Show resolved
Hide resolved
cudax/include/cuda/experimental/__memory_resource/memory_resource_base.cuh
Outdated
Show resolved
Hide resolved
Contributor
🟨 CI finished in 2h 01m: Pass: 99%/210 | Total: 4d 08h | Avg: 29m 49s | Max: 1h 47m | Hits: 78%/321093
|
| Project | |
|---|---|
| CCCL Infrastructure | |
| CCCL Packaging | |
| +/- | libcu++ |
| +/- | CUB |
| Thrust | |
| +/- | CUDA Experimental |
| stdpar | |
| python | |
| CCCL C Parallel Library | |
| Catch2Helper |
Modifications in project or dependencies?
| Project | |
|---|---|
| CCCL Infrastructure | |
| +/- | CCCL Packaging |
| +/- | libcu++ |
| +/- | CUB |
| +/- | Thrust |
| +/- | CUDA Experimental |
| +/- | stdpar |
| +/- | python |
| +/- | CCCL C Parallel Library |
| +/- | Catch2Helper |
🏃 Runner counts (total jobs: 210)
| # | Runner |
|---|---|
| 128 | linux-amd64-cpu16 |
| 23 | windows-amd64-cpu16 |
| 17 | linux-amd64-gpu-l4-latest-1 |
| 12 | linux-arm64-cpu16 |
| 11 | linux-amd64-gpu-rtx2080-latest-1 |
| 10 | linux-amd64-gpu-h100-latest-1 |
| 6 | linux-amd64-gpu-rtxa6000-latest-1 |
| 3 | linux-amd64-gpu-rtx4090-latest-1 |
Contributor
🟩 CI finished in 1h 59m: Pass: 100%/210 | Total: 4d 07h | Avg: 29m 39s | Max: 1h 52m | Hits: 80%/320925
|
| Project | |
|---|---|
| CCCL Infrastructure | |
| CCCL Packaging | |
| +/- | libcu++ |
| +/- | CUB |
| Thrust | |
| +/- | CUDA Experimental |
| stdpar | |
| python | |
| CCCL C Parallel Library | |
| Catch2Helper |
Modifications in project or dependencies?
| Project | |
|---|---|
| CCCL Infrastructure | |
| +/- | CCCL Packaging |
| +/- | libcu++ |
| +/- | CUB |
| +/- | Thrust |
| +/- | CUDA Experimental |
| +/- | stdpar |
| +/- | python |
| +/- | CCCL C Parallel Library |
| +/- | Catch2Helper |
🏃 Runner counts (total jobs: 210)
| # | Runner |
|---|---|
| 128 | linux-amd64-cpu16 |
| 23 | windows-amd64-cpu16 |
| 17 | linux-amd64-gpu-l4-latest-1 |
| 12 | linux-arm64-cpu16 |
| 11 | linux-amd64-gpu-rtx2080-latest-1 |
| 10 | linux-amd64-gpu-h100-latest-1 |
| 6 | linux-amd64-gpu-rtxa6000-latest-1 |
| 3 | linux-amd64-gpu-rtx4090-latest-1 |
Contributor
|
Backport failed for Please cherry-pick the changes locally and resolve any conflicts. git fetch origin branch/3.1.x
git worktree add -d .worktree/backport-5313-to-branch/3.1.x origin/branch/3.1.x
cd .worktree/backport-5313-to-branch/3.1.x
git switch --create backport-5313-to-branch/3.1.x
git cherry-pick -x dd218ad86d42ff5ef24e6cb31ab3c43936572064 |
44 tasks
Contributor
|
Backport failed for Please cherry-pick the changes locally and resolve any conflicts. git fetch origin branch/3.1.x
git worktree add -d .worktree/backport-5313-to-branch/3.1.x origin/branch/3.1.x
cd .worktree/backport-5313-to-branch/3.1.x
git switch --create backport-5313-to-branch/3.1.x
git cherry-pick -x dd218ad86d42ff5ef24e6cb31ab3c43936572064 |
pciolkosz
added a commit
to pciolkosz/cccl
that referenced
this pull request
Aug 11, 2025
…locations are the default ones (NVIDIA#5313) * Rename resource to synchronous_resource * Add `sync` suffix to synchronous allocate and deallocate * Rename memory resource concepts and member functions * Leave everything under experimental define for now * Fix docs * Fix format * Some docs fixes * Fix format --------- Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com> (cherry picked from commit dd218ad)
pciolkosz
added a commit
that referenced
this pull request
Aug 11, 2025
…locations are the default ones (#5313) (#5492) * Rename resource to synchronous_resource * Add `sync` suffix to synchronous allocate and deallocate * Rename memory resource concepts and member functions * Leave everything under experimental define for now * Fix docs * Fix format * Some docs fixes * Fix format --------- (cherry picked from commit dd218ad) Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>
3 tasks
davebayer
pushed a commit
to davebayer/cccl
that referenced
this pull request
Sep 23, 2025
…locations are the default ones (NVIDIA#5313) * Rename resource to synchronous_resource * Add `sync` suffix to synchronous allocate and deallocate * Rename memory resource concepts and member functions * Leave everything under experimental define for now * Fix docs * Fix format * Some docs fixes * Fix format --------- Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>
3 tasks
hcho3
added a commit
to hcho3/xgboost
that referenced
this pull request
Dec 13, 2025
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.
We want to position stream ordered allocations as the default ones. This means that resource concept names and member functions should not have
asyncin the name, instead we will addsyncorsynchronousto things that are not async capable. We considered requiring stream ordered operation, but ultimately it seemed too limiting for potential future resources.This PR makes the following renames:
mr::resource->mr::synchronous_resourcemr::resource_with->mr::synchronous_resource_withmr::async_resource->mr::resourcemr::async_resource_with->mr::resource_with.allocate()->.allocate_sync().deallocate()->.deallocate_sync().allocate_async()->.allocate().deallocate_async()->.deallocate()Most CCCL Runtime APIs that take a stream as an argument do so in the first position. This way it's easier to tell something is asynchronous without the
asyncin the name. This change aligns memory resources with this rule, nowallocateanddeallocatetakesstream_refas first argument instead of the last one.