Skip to content

fix completion signature computation of starts_on, work around gcc9 ICE#5724

Merged
ericniebler merged 1 commit intoNVIDIA:mainfrom
ericniebler:cudax-execution-gcc9-portability
Sep 1, 2025
Merged

fix completion signature computation of starts_on, work around gcc9 ICE#5724
ericniebler merged 1 commit intoNVIDIA:mainfrom
ericniebler:cudax-execution-gcc9-portability

Conversation

@ericniebler
Copy link
Contributor

Description

the cudax execution library is causing gcc9 to ICE in nightly CI. some implementation details of cudax::execution::get_completion_signatures were tripping up gcc9. this pr simplifies the code enough for gcc9 to accept it.

investigating this let me to an issue in how the starts_on sender is computing its completion signatures. this pr addresses that problem as well, which was contributing to the ICE.

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 29, 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 29, 2025
@ericniebler
Copy link
Contributor Author

/ok to test 19e8a10

@github-actions
Copy link
Contributor

🟩 CI finished in 28m 34s: Pass: 100%/32 | Total: 4h 20m | Avg: 8m 08s | Max: 20m 27s | Hits: 83%/15498
  • 🟩 cudax: Pass: 100%/28 | Total: 3h 55m | Avg: 8m 25s | Max: 20m 27s | Hits: 83%/15498

    🟩 cpu
      🟩 amd64              Pass: 100%/24  | Total:  3h 32m | Avg:  8m 50s | Max: 20m 27s | Hits:  83%/13110 
      🟩 arm64              Pass: 100%/4   | Total: 23m 28s | Avg:  5m 52s | Max:  6m 36s | Hits:  83%/2388  
    🟩 ctk
      🟩 12.0               Pass: 100%/3   | Total: 25m 07s | Avg:  8m 22s | Max: 14m 19s | Hits:  78%/1485  
      🟩 12.9               Pass: 100%/25  | Total:  3h 30m | Avg:  8m 25s | Max: 20m 27s | Hits:  83%/14013 
    🟩 cudacxx
      🟩 nvcc12.0           Pass: 100%/3   | Total: 25m 07s | Avg:  8m 22s | Max: 14m 19s | Hits:  78%/1485  
      🟩 nvcc12.9           Pass: 100%/25  | Total:  3h 30m | Avg:  8m 25s | Max: 20m 27s | Hits:  83%/14013 
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/28  | Total:  3h 55m | Avg:  8m 25s | Max: 20m 27s | Hits:  83%/15498 
    🟩 cxx
      🟩 Clang14            Pass: 100%/2   | Total: 10m 42s | Avg:  5m 21s | Max:  5m 57s | Hits:  83%/1196  
      🟩 Clang15            Pass: 100%/1   | Total:  6m 48s | Avg:  6m 48s | Max:  6m 48s | Hits:  83%/597   
      🟩 Clang16            Pass: 100%/1   | Total:  5m 54s | Avg:  5m 54s | Max:  5m 54s | Hits:  83%/597   
      🟩 Clang17            Pass: 100%/1   | Total:  6m 15s | Avg:  6m 15s | Max:  6m 15s | Hits:  83%/597   
      🟩 Clang18            Pass: 100%/1   | Total:  6m 27s | Avg:  6m 27s | Max:  6m 27s | Hits:  83%/597   
      🟩 Clang19            Pass: 100%/4   | Total: 37m 26s | Avg:  9m 21s | Max: 20m 27s | Hits:  87%/2388  
      🟩 GCC10              Pass: 100%/2   | Total: 12m 08s | Avg:  6m 04s | Max:  6m 05s | Hits:  82%/1196  
      🟩 GCC11              Pass: 100%/1   | Total:  6m 38s | Avg:  6m 38s | Max:  6m 38s | Hits:  82%/597   
      🟩 GCC12              Pass: 100%/1   | Total:  6m 39s | Avg:  6m 39s | Max:  6m 39s | Hits:  82%/597   
      🟩 GCC13              Pass: 100%/8   | Total: 57m 36s | Avg:  7m 12s | Max: 12m 28s | Hits:  87%/4776  
      🟩 MSVC14.39          Pass: 100%/1   | Total: 14m 19s | Avg: 14m 19s | Max: 14m 19s | Hits:  62%/291   
      🟩 MSVC14.43          Pass: 100%/3   | Total: 44m 19s | Avg: 14m 46s | Max: 16m 16s | Hits:  62%/879   
      🟩 NVHPC25.7          Pass: 100%/2   | Total: 20m 39s | Avg: 10m 19s | Max: 10m 20s | Hits:  80%/1190  
    🟩 cxx_family
      🟩 Clang              Pass: 100%/10  | Total:  1h 13m | Avg:  7m 21s | Max: 20m 27s | Hits:  84%/5972  
      🟩 GCC                Pass: 100%/12  | Total:  1h 23m | Avg:  6m 55s | Max: 12m 28s | Hits:  85%/7166  
      🟩 MSVC               Pass: 100%/4   | Total: 58m 38s | Avg: 14m 39s | Max: 16m 16s | Hits:  62%/1170  
      🟩 NVHPC              Pass: 100%/2   | Total: 20m 39s | Avg: 10m 19s | Max: 10m 20s | Hits:  80%/1190  
    🟩 gpu
      🟩 h100               Pass: 100%/2   | Total: 13m 07s | Avg:  6m 33s | Max:  8m 09s | Hits:  91%/1194  
      🟩 rtx2080            Pass: 100%/26  | Total:  3h 42m | Avg:  8m 33s | Max: 20m 27s | Hits:  82%/14304 
    🟩 jobs
      🟩 Build              Pass: 100%/25  | Total:  3h 14m | Avg:  7m 47s | Max: 16m 16s | Hits:  81%/13707 
      🟩 Test               Pass: 100%/3   | Total: 41m 04s | Avg: 13m 41s | Max: 20m 27s | Hits:  99%/1791  
    🟩 sm
      🟩 90                 Pass: 100%/2   | Total: 13m 07s | Avg:  6m 33s | Max:  8m 09s | Hits:  91%/1194  
      🟩 90;90a             Pass: 100%/2   | Total: 20m 01s | Avg: 10m 00s | Max: 13m 59s | Hits:  76%/890   
      🟩 100;120            Pass: 100%/2   | Total: 20m 14s | Avg: 10m 07s | Max: 14m 04s | Hits:  76%/890   
    🟩 std
      🟩 17                 Pass: 100%/3   | Total: 21m 52s | Avg:  7m 17s | Max: 10m 19s | Hits:  82%/1789  
      🟩 20                 Pass: 100%/25  | Total:  3h 33m | Avg:  8m 33s | Max: 20m 27s | Hits:  83%/13709 
    
  • 🟩 packaging: Pass: 100%/4 | Total: 24m 49s | Avg: 6m 12s | Max: 8m 17s

    🟩 cpu
      🟩 amd64              Pass: 100%/4   | Total: 24m 49s | Avg:  6m 12s | Max:  8m 17s
    🟩 ctk
      🟩 12.0               Pass: 100%/2   | Total: 14m 21s | Avg:  7m 10s | Max:  8m 17s
      🟩 12.9               Pass: 100%/2   | Total: 10m 28s | Avg:  5m 14s | Max:  7m 35s
    🟩 cudacxx
      🟩 nvcc12.0           Pass: 100%/2   | Total: 14m 21s | Avg:  7m 10s | Max:  8m 17s
      🟩 nvcc12.9           Pass: 100%/2   | Total: 10m 28s | Avg:  5m 14s | Max:  7m 35s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/4   | Total: 24m 49s | Avg:  6m 12s | Max:  8m 17s
    🟩 cxx
      🟩 Clang14            Pass: 100%/1   | Total:  8m 17s | Avg:  8m 17s | Max:  8m 17s
      🟩 Clang19            Pass: 100%/1   | Total:  2m 53s | Avg:  2m 53s | Max:  2m 53s
      🟩 GCC12              Pass: 100%/1   | Total:  6m 04s | Avg:  6m 04s | Max:  6m 04s
      🟩 GCC13              Pass: 100%/1   | Total:  7m 35s | Avg:  7m 35s | Max:  7m 35s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/2   | Total: 11m 10s | Avg:  5m 35s | Max:  8m 17s
      🟩 GCC                Pass: 100%/2   | Total: 13m 39s | Avg:  6m 49s | Max:  7m 35s
    🟩 gpu
      🟩 rtx2080            Pass: 100%/4   | Total: 24m 49s | Avg:  6m 12s | Max:  8m 17s
    🟩 jobs
      🟩 Test               Pass: 100%/4   | Total: 24m 49s | Avg:  6m 12s | Max:  8m 17s
    

👃 Inspect Changes

Modifications in project?

Project
CCCL Infrastructure
CCCL Packaging
libcu++
CUB
Thrust
+/- CUDA Experimental
stdpar
python
CCCL C Parallel Library
Catch2Helper
NVBench Helper

Modifications in project or dependencies?

Project
CCCL Infrastructure
+/- CCCL Packaging
libcu++
CUB
Thrust
+/- CUDA Experimental
stdpar
python
CCCL C Parallel Library
Catch2Helper
NVBench Helper

🏃‍ 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 29, 2025 23:10
@ericniebler ericniebler requested a review from a team as a code owner August 29, 2025 23:10
@ericniebler ericniebler requested a review from griwes August 29, 2025 23:10
@cccl-authenticator-app cccl-authenticator-app bot moved this from In Progress to In Review in CCCL Aug 29, 2025
@ericniebler ericniebler enabled auto-merge (squash) August 30, 2025 01:38
@ericniebler ericniebler merged commit cec749d into NVIDIA:main Sep 1, 2025
45 checks passed
@github-project-automation github-project-automation bot moved this from In Review to Done in CCCL Sep 1, 2025
davebayer pushed a commit to davebayer/cccl that referenced this pull request Sep 23, 2025
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