Skip to content

remove the dependence from sync_wait's receiver on the sender's type#5446

Merged
ericniebler merged 1 commit intoNVIDIA:mainfrom
ericniebler:simplify-sync-wait-receiver
Aug 6, 2025
Merged

remove the dependence from sync_wait's receiver on the sender's type#5446
ericniebler merged 1 commit intoNVIDIA:mainfrom
ericniebler:simplify-sync-wait-receiver

Conversation

@ericniebler
Copy link
Contributor

Description

to keep type names short(er), it is best for receiver types to not depend on the type of the sender to which it is connected, which would cause the sender type (often large) to appear twice in the type of the operation state.

this PR changes the receiver used by the sync_wait algorithm to no longer depend on the type of the sender passed to sync_wait.

Checklist

  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

@copy-pr-bot
Copy link
Contributor

copy-pr-bot bot commented Aug 6, 2025

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.

@cccl-authenticator-app cccl-authenticator-app bot moved this from Todo to In Progress in CCCL Aug 6, 2025
@ericniebler
Copy link
Contributor Author

/ok to test 6a9cae6

@github-actions
Copy link
Contributor

github-actions bot commented Aug 6, 2025

🟩 CI finished in 32m 08s: Pass: 100%/32 | Total: 3h 47m | Avg: 7m 07s | Max: 24m 38s | Hits: 94%/15390
  • 🟩 cudax: Pass: 100%/28 | Total: 3h 28m | Avg: 7m 26s | Max: 24m 38s | Hits: 94%/15390

    🟩 cpu
      🟩 amd64              Pass: 100%/24  | Total:  3h 11m | Avg:  7m 58s | Max: 24m 38s | Hits:  94%/13018 
      🟩 arm64              Pass: 100%/4   | Total: 16m 57s | Avg:  4m 14s | Max:  4m 37s | Hits:  94%/2372  
    🟩 ctk
      🟩 12.0               Pass: 100%/3   | Total: 20m 09s | Avg:  6m 43s | Max: 12m 16s | Hits:  92%/1474  
      🟩 12.9               Pass: 100%/25  | Total:  3h 08m | Avg:  7m 31s | Max: 24m 38s | Hits:  94%/13916 
    🟩 cudacxx
      🟩 nvcc12.0           Pass: 100%/3   | Total: 20m 09s | Avg:  6m 43s | Max: 12m 16s | Hits:  92%/1474  
      🟩 nvcc12.9           Pass: 100%/25  | Total:  3h 08m | Avg:  7m 31s | Max: 24m 38s | Hits:  94%/13916 
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/28  | Total:  3h 28m | Avg:  7m 26s | Max: 24m 38s | Hits:  94%/15390 
    🟩 cxx
      🟩 Clang14            Pass: 100%/2   | Total:  7m 51s | Avg:  3m 55s | Max:  4m 11s | Hits:  94%/1188  
      🟩 Clang15            Pass: 100%/1   | Total:  4m 23s | Avg:  4m 23s | Max:  4m 23s | Hits:  94%/593   
      🟩 Clang16            Pass: 100%/1   | Total:  4m 35s | Avg:  4m 35s | Max:  4m 35s | Hits:  94%/593   
      🟩 Clang17            Pass: 100%/1   | Total:  4m 23s | Avg:  4m 23s | Max:  4m 23s | Hits:  94%/593   
      🟩 Clang18            Pass: 100%/1   | Total:  4m 30s | Avg:  4m 30s | Max:  4m 30s | Hits:  94%/593   
      🟩 Clang19            Pass: 100%/4   | Total: 35m 46s | Avg:  8m 56s | Max: 23m 32s | Hits:  96%/2372  
      🟩 GCC10              Pass: 100%/2   | Total:  9m 05s | Avg:  4m 32s | Max:  4m 52s | Hits:  94%/1188  
      🟩 GCC11              Pass: 100%/1   | Total:  5m 03s | Avg:  5m 03s | Max:  5m 03s | Hits:  94%/593   
      🟩 GCC12              Pass: 100%/1   | Total:  5m 21s | Avg:  5m 21s | Max:  5m 21s | Hits:  94%/593   
      🟩 GCC13              Pass: 100%/8   | Total:  1h 00m | Avg:  7m 34s | Max: 24m 38s | Hits:  95%/4744  
      🟩 MSVC14.39          Pass: 100%/1   | Total: 12m 16s | Avg: 12m 16s | Max: 12m 16s | Hits:  85%/288   
      🟩 MSVC14.43          Pass: 100%/3   | Total: 37m 21s | Avg: 12m 27s | Max: 13m 18s | Hits:  85%/870   
      🟩 NVHPC25.5          Pass: 100%/2   | Total: 17m 06s | Avg:  8m 33s | Max:  8m 38s | Hits:  92%/1182  
    🟩 cxx_family
      🟩 Clang              Pass: 100%/10  | Total:  1h 01m | Avg:  6m 08s | Max: 23m 32s | Hits:  95%/5932  
      🟩 GCC                Pass: 100%/12  | Total:  1h 20m | Avg:  6m 40s | Max: 24m 38s | Hits:  95%/7118  
      🟩 MSVC               Pass: 100%/4   | Total: 49m 37s | Avg: 12m 24s | Max: 13m 18s | Hits:  85%/1158  
      🟩 NVHPC              Pass: 100%/2   | Total: 17m 06s | Avg:  8m 33s | Max:  8m 38s | Hits:  92%/1182  
    🟩 gpu
      🟩 h100               Pass: 100%/2   | Total: 12m 05s | Avg:  6m 02s | Max:  8m 11s | Hits:  97%/1186  
      🟩 rtx2080            Pass: 100%/26  | Total:  3h 16m | Avg:  7m 32s | Max: 24m 38s | Hits:  94%/14204 
    🟩 jobs
      🟩 Build              Pass: 100%/25  | Total:  2h 31m | Avg:  6m 04s | Max: 13m 18s | Hits:  93%/13611 
      🟩 Test               Pass: 100%/3   | Total: 56m 21s | Avg: 18m 47s | Max: 24m 38s | Hits:  99%/1779  
    🟩 sm
      🟩 90                 Pass: 100%/2   | Total: 12m 05s | Avg:  6m 02s | Max:  8m 11s | Hits:  97%/1186  
      🟩 90;90a             Pass: 100%/2   | Total: 17m 05s | Avg:  8m 32s | Max: 12m 16s | Hits:  91%/883   
      🟩 100;120            Pass: 100%/2   | Total: 16m 31s | Avg:  8m 15s | Max: 11m 47s | Hits:  91%/883   
    🟩 std
      🟩 17                 Pass: 100%/3   | Total: 16m 57s | Avg:  5m 39s | Max:  8m 28s | Hits:  94%/1777  
      🟩 20                 Pass: 100%/25  | Total:  3h 11m | Avg:  7m 39s | Max: 24m 38s | Hits:  94%/13613 
    
  • 🟩 packaging: Pass: 100%/4 | Total: 19m 29s | Avg: 4m 52s | Max: 7m 20s

    🟩 cpu
      🟩 amd64              Pass: 100%/4   | Total: 19m 29s | Avg:  4m 52s | Max:  7m 20s
    🟩 ctk
      🟩 12.0               Pass: 100%/2   | Total:  9m 36s | Avg:  4m 48s | Max:  7m 16s
      🟩 12.9               Pass: 100%/2   | Total:  9m 53s | Avg:  4m 56s | Max:  7m 20s
    🟩 cudacxx
      🟩 nvcc12.0           Pass: 100%/2   | Total:  9m 36s | Avg:  4m 48s | Max:  7m 16s
      🟩 nvcc12.9           Pass: 100%/2   | Total:  9m 53s | Avg:  4m 56s | Max:  7m 20s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/4   | Total: 19m 29s | Avg:  4m 52s | Max:  7m 20s
    🟩 cxx
      🟩 Clang14            Pass: 100%/1   | Total:  7m 16s | Avg:  7m 16s | Max:  7m 16s
      🟩 Clang19            Pass: 100%/1   | Total:  7m 20s | Avg:  7m 20s | Max:  7m 20s
      🟩 GCC12              Pass: 100%/1   | Total:  2m 20s | Avg:  2m 20s | Max:  2m 20s
      🟩 GCC13              Pass: 100%/1   | Total:  2m 33s | Avg:  2m 33s | Max:  2m 33s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/2   | Total: 14m 36s | Avg:  7m 18s | Max:  7m 20s
      🟩 GCC                Pass: 100%/2   | Total:  4m 53s | Avg:  2m 26s | Max:  2m 33s
    🟩 gpu
      🟩 rtx2080            Pass: 100%/4   | Total: 19m 29s | Avg:  4m 52s | Max:  7m 20s
    🟩 jobs
      🟩 Test               Pass: 100%/4   | Total: 19m 29s | Avg:  4m 52s | Max:  7m 20s
    

👃 Inspect Changes

Modifications in project?

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: 32)

# Runner
17 linux-amd64-cpu16
6 linux-amd64-gpu-rtx2080-latest-1
4 linux-arm64-cpu16
4 windows-amd64-cpu16
1 linux-amd64-gpu-h100-latest-1

@ericniebler ericniebler marked this pull request as ready for review August 6, 2025 18:50
@ericniebler ericniebler requested a review from a team as a code owner August 6, 2025 18:50
@ericniebler ericniebler requested a review from pciolkosz August 6, 2025 18:50
@cccl-authenticator-app cccl-authenticator-app bot moved this from In Progress to In Review in CCCL Aug 6, 2025
@ericniebler ericniebler merged commit 4e739ab into NVIDIA:main Aug 6, 2025
46 checks passed
@github-project-automation github-project-automation bot moved this from In Review to Done in CCCL Aug 6, 2025
@ericniebler ericniebler deleted the simplify-sync-wait-receiver branch August 6, 2025 21:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

2 participants