Skip to content
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

std::linalg accessors and transposed_layout #2962

Merged
merged 70 commits into from
Jan 16, 2025

Conversation

fbusato
Copy link
Contributor

@fbusato fbusato commented Nov 26, 2024

Address #2823

Description

Provide C++26 std::linalg accessors and backport to C++17

  • scaled_accessor and scaled()
  • conjugated_accessor and conjugated()
  • layout_transpose and transposed()
  • conjugate_transpose()

Copy link
Contributor

🟨 CI finished in 4h 00m: Pass: 89%/396 | Total: 6d 18h | Avg: 24m 34s | Max: 1h 22m | Hits: 74%/19881
  • 🟨 libcudacxx: Pass: 65%/118 | Total: 1d 10h | Avg: 17m 37s | Max: 1h 22m | Hits: 53%/7347

    🟨 cxx
      🟨 Clang9             Pass:  66%/6   | Total:  1h 37m | Avg: 16m 18s | Max: 29m 54s
      🟨 Clang10            Pass:  66%/3   | Total:  1h 01m | Avg: 20m 36s | Max: 25m 34s
      🟨 Clang11            Pass:  75%/4   | Total:  1h 15m | Avg: 18m 45s | Max: 29m 02s
      🟨 Clang12            Pass:  75%/4   | Total:  1h 00m | Avg: 15m 12s | Max: 27m 21s
      🟨 Clang13            Pass:  75%/4   | Total:  1h 23m | Avg: 20m 46s | Max: 30m 11s
      🟨 Clang14            Pass:  75%/4   | Total:  1h 15m | Avg: 18m 46s | Max: 26m 26s
      🟨 Clang15            Pass:  75%/4   | Total:  1h 18m | Avg: 19m 44s | Max: 28m 32s
      🟨 Clang16            Pass:  75%/4   | Total: 48m 51s | Avg: 12m 12s | Max: 17m 11s
      🟨 Clang17            Pass:  75%/4   | Total:  1h 10m | Avg: 17m 30s | Max: 28m 08s
      🟨 Clang18            Pass:  77%/18  | Total:  4h 52m | Avg: 16m 14s | Max: 30m 19s
      🟨 GCC6               Pass:  50%/2   | Total: 13m 23s | Avg:  6m 41s | Max: 10m 33s
      🟨 GCC7               Pass:  33%/6   | Total:  1h 48m | Avg: 18m 06s | Max: 21m 45s
      🟨 GCC8               Pass:  33%/6   | Total:  1h 41m | Avg: 16m 58s | Max: 27m 39s
      🟨 GCC9               Pass:  33%/6   | Total:  1h 07m | Avg: 11m 13s | Max: 21m 22s
      🟨 GCC10              Pass:  25%/4   | Total:  1h 26m | Avg: 21m 41s | Max: 26m 29s
      🟨 GCC11              Pass:  71%/7   | Total:  2h 30m | Avg: 21m 25s | Max: 30m 14s
      🟨 GCC12              Pass:  75%/4   | Total:  1h 30m | Avg: 22m 36s | Max: 29m 23s
      🟨 GCC13              Pass:  70%/17  | Total:  4h 41m | Avg: 16m 31s | Max:  1h 22m
      🟨 Intel2023.2.0      Pass:  66%/3   | Total: 55m 18s | Avg: 18m 26s | Max: 25m 46s
      🟥 MSVC14.16          Pass:   0%/1   | Total: 18m 34s | Avg: 18m 34s | Max: 18m 34s
      🟩 MSVC14.29          Pass: 100%/2   | Total: 48m 09s | Avg: 24m 04s | Max: 34m 43s | Hits:  67%/4743  
      🟩 MSVC14.39          Pass: 100%/1   | Total: 44m 22s | Avg: 44m 22s | Max: 44m 22s | Hits:  29%/2604  
      🟨 NVHPC24.7          Pass:  75%/4   | Total:  1h 09m | Avg: 17m 25s | Max: 39m 02s
    🟨 jobs
      🟨 Build              Pass:  65%/110 | Total:  1d 07h | Avg: 17m 04s | Max: 44m 22s | Hits:  53%/7347  
      🟨 NVRTC              Pass:  25%/4   | Total:  1h 19m | Avg: 19m 51s | Max: 21m 24s
      🟩 Test               Pass: 100%/3   | Total:  1h 58m | Avg: 39m 37s | Max:  1h 22m
      🟩 VerifyCodegen      Pass: 100%/1   | Total:  2m 31s | Avg:  2m 31s | Max:  2m 31s
    🟨 std
      🟩 11                 Pass: 100%/32  | Total:  6h 55m | Avg: 12m 59s | Max: 23m 44s
      🟨 14                 Pass:   3%/32  | Total:  8h 38m | Avg: 16m 12s | Max: 34m 43s | Hits:  32%/2293  
      🟨 17                 Pass:  73%/30  | Total:  9h 27m | Avg: 18m 54s | Max: 39m 02s | Hits:  98%/2450  
      🟨 20                 Pass:  91%/23  | Total:  9h 35m | Avg: 25m 01s | Max:  1h 22m | Hits:  29%/2604  
    🟨 gpu
      🟨 v100               Pass:  65%/118 | Total:  1d 10h | Avg: 17m 37s | Max:  1h 22m | Hits:  53%/7347  
    🟨 cpu
      🟨 amd64              Pass:  64%/110 | Total:  1d 08h | Avg: 17m 35s | Max:  1h 22m | Hits:  53%/7347  
      🟨 arm64              Pass:  75%/8   | Total:  2h 24m | Avg: 18m 03s | Max: 25m 56s
    🟨 ctk
      🟨 11.1               Pass:  40%/15  | Total:  3h 19m | Avg: 13m 17s | Max: 25m 00s
      🟨 11.8               Pass:  66%/3   | Total:  1h 15m | Avg: 25m 08s | Max: 30m 14s
      🟨 12.5               Pass:  75%/4   | Total:  1h 09m | Avg: 17m 25s | Max: 39m 02s
      🟨 12.6               Pass:  68%/96  | Total:  1d 04h | Avg: 18m 04s | Max:  1h 22m | Hits:  53%/7347  
    🟨 cudacxx
      🟨 ClangCUDA18        Pass:  75%/12  | Total:  2h 33m | Avg: 12m 48s | Max: 19m 29s
      🟨 nvcc11.1           Pass:  40%/15  | Total:  3h 19m | Avg: 13m 17s | Max: 25m 00s
      🟨 nvcc11.8           Pass:  66%/3   | Total:  1h 15m | Avg: 25m 08s | Max: 30m 14s
      🟨 nvcc12.5           Pass:  75%/4   | Total:  1h 09m | Avg: 17m 25s | Max: 39m 02s
      🟨 nvcc12.6           Pass:  67%/84  | Total:  1d 02h | Avg: 18m 49s | Max:  1h 22m | Hits:  53%/7347  
    🟨 cudacxx_family
      🟨 ClangCUDA          Pass:  75%/12  | Total:  2h 33m | Avg: 12m 48s | Max: 19m 29s
      🟨 nvcc               Pass:  64%/106 | Total:  1d 08h | Avg: 18m 10s | Max:  1h 22m | Hits:  53%/7347  
    🟨 cxx_family
      🟨 Clang              Pass:  74%/55  | Total: 15h 43m | Avg: 17m 09s | Max: 30m 19s
      🟨 GCC                Pass:  53%/52  | Total: 14h 59m | Avg: 17m 17s | Max:  1h 22m
      🟨 Intel              Pass:  66%/3   | Total: 55m 18s | Avg: 18m 26s | Max: 25m 46s
      🟨 MSVC               Pass:  75%/4   | Total:  1h 51m | Avg: 27m 46s | Max: 44m 22s | Hits:  53%/7347  
      🟨 NVHPC              Pass:  75%/4   | Total:  1h 09m | Avg: 17m 25s | Max: 39m 02s
    🟨 sm
      🟨 60;70;80;90        Pass:  66%/3   | Total:  1h 15m | Avg: 25m 08s | Max: 30m 14s
      🟨 90                 Pass:  75%/4   | Total: 43m 45s | Avg: 10m 56s | Max: 13m 37s
      🟨 90a                Pass:  75%/8   | Total:  1h 02m | Avg:  7m 45s | Max: 13m 29s
    
  • 🟩 thrust: Pass: 100%/111 | Total: 2d 00h | Avg: 26m 10s | Max: 1h 13m | Hits: 90%/9260

    🟩 cmake_options
      🟩 -DTHRUST_DISPATCH_TYPE=Force32bit Pass: 100%/2   | Total: 58m 27s | Avg: 29m 13s | Max: 31m 13s
    🟩 cpu
      🟩 amd64              Pass: 100%/103 | Total:  1d 21h | Avg: 26m 13s | Max:  1h 13m | Hits:  90%/9260  
      🟩 arm64              Pass: 100%/8   | Total:  3h 25m | Avg: 25m 42s | Max: 37m 17s
    🟩 ctk
      🟩 11.1               Pass: 100%/15  | Total:  5h 28m | Avg: 21m 53s | Max: 33m 56s | Hits:  99%/1852  
      🟩 11.8               Pass: 100%/3   | Total:  1h 30m | Avg: 30m 19s | Max: 43m 29s
      🟩 12.5               Pass: 100%/4   | Total:  3h 14m | Avg: 48m 44s | Max:  1h 01m
      🟩 12.6               Pass: 100%/89  | Total:  1d 14h | Avg: 25m 44s | Max:  1h 13m | Hits:  88%/7408  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/4   | Total:  1h 30m | Avg: 22m 34s | Max: 28m 48s
      🟩 nvcc11.1           Pass: 100%/15  | Total:  5h 28m | Avg: 21m 53s | Max: 33m 56s | Hits:  99%/1852  
      🟩 nvcc11.8           Pass: 100%/3   | Total:  1h 30m | Avg: 30m 19s | Max: 43m 29s
      🟩 nvcc12.5           Pass: 100%/4   | Total:  3h 14m | Avg: 48m 44s | Max:  1h 01m
      🟩 nvcc12.6           Pass: 100%/85  | Total:  1d 12h | Avg: 25m 53s | Max:  1h 13m | Hits:  88%/7408  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/4   | Total:  1h 30m | Avg: 22m 34s | Max: 28m 48s
      🟩 nvcc               Pass: 100%/107 | Total:  1d 22h | Avg: 26m 18s | Max:  1h 13m | Hits:  90%/9260  
    🟩 cxx
      🟩 Clang9             Pass: 100%/6   | Total:  2h 26m | Avg: 24m 27s | Max: 38m 43s
      🟩 Clang10            Pass: 100%/3   | Total:  1h 21m | Avg: 27m 15s | Max: 40m 25s
      🟩 Clang11            Pass: 100%/4   | Total:  1h 45m | Avg: 26m 24s | Max: 34m 49s
      🟩 Clang12            Pass: 100%/4   | Total:  1h 48m | Avg: 27m 13s | Max: 35m 33s
      🟩 Clang13            Pass: 100%/4   | Total:  1h 47m | Avg: 26m 45s | Max: 35m 07s
      🟩 Clang14            Pass: 100%/4   | Total:  1h 49m | Avg: 27m 23s | Max: 36m 03s
      🟩 Clang15            Pass: 100%/4   | Total:  1h 41m | Avg: 25m 28s | Max: 32m 34s
      🟩 Clang16            Pass: 100%/4   | Total:  1h 45m | Avg: 26m 17s | Max: 34m 56s
      🟩 Clang17            Pass: 100%/4   | Total:  1h 51m | Avg: 27m 50s | Max: 37m 28s
      🟩 Clang18            Pass: 100%/11  | Total:  4h 00m | Avg: 21m 51s | Max: 32m 59s
      🟩 GCC6               Pass: 100%/2   | Total: 36m 57s | Avg: 18m 28s | Max: 32m 28s
      🟩 GCC7               Pass: 100%/6   | Total:  2h 20m | Avg: 23m 29s | Max: 35m 31s
      🟩 GCC8               Pass: 100%/6   | Total:  2h 24m | Avg: 24m 09s | Max: 35m 24s
      🟩 GCC9               Pass: 100%/6   | Total:  2h 23m | Avg: 23m 50s | Max: 34m 23s
      🟩 GCC10              Pass: 100%/4   | Total:  1h 56m | Avg: 29m 11s | Max: 37m 23s
      🟩 GCC11              Pass: 100%/7   | Total:  3h 20m | Avg: 28m 38s | Max: 43m 29s
      🟩 GCC12              Pass: 100%/4   | Total:  1h 56m | Avg: 29m 07s | Max: 37m 34s
      🟩 GCC13              Pass: 100%/16  | Total:  5h 48m | Avg: 21m 47s | Max: 42m 50s
      🟩 Intel2023.2.0      Pass: 100%/3   | Total:  1h 33m | Avg: 31m 19s | Max: 44m 35s
      🟩 MSVC14.16          Pass: 100%/1   | Total: 18m 38s | Avg: 18m 38s | Max: 18m 38s | Hits:  99%/1852  
      🟩 MSVC14.29          Pass: 100%/2   | Total: 32m 42s | Avg: 16m 21s | Max: 16m 23s | Hits:  99%/3704  
      🟩 MSVC14.39          Pass: 100%/2   | Total:  1h 39m | Avg: 49m 35s | Max:  1h 13m | Hits:  78%/3704  
      🟩 NVHPC24.7          Pass: 100%/4   | Total:  3h 14m | Avg: 48m 44s | Max:  1h 01m
    🟩 cxx_family
      🟩 Clang              Pass: 100%/48  | Total: 20h 18m | Avg: 25m 22s | Max: 40m 25s
      🟩 GCC                Pass: 100%/51  | Total: 20h 48m | Avg: 24m 28s | Max: 43m 29s
      🟩 Intel              Pass: 100%/3   | Total:  1h 33m | Avg: 31m 19s | Max: 44m 35s
      🟩 MSVC               Pass: 100%/5   | Total:  2h 30m | Avg: 30m 06s | Max:  1h 13m | Hits:  90%/9260  
      🟩 NVHPC              Pass: 100%/4   | Total:  3h 14m | Avg: 48m 44s | Max:  1h 01m
    🟩 gpu
      🟩 v100               Pass: 100%/111 | Total:  2d 00h | Avg: 26m 10s | Max:  1h 13m | Hits:  90%/9260  
    🟩 jobs
      🟩 Build              Pass: 100%/103 | Total:  1d 22h | Avg: 26m 51s | Max:  1h 13m | Hits:  88%/7408  
      🟩 TestCPU            Pass: 100%/4   | Total: 47m 31s | Avg: 11m 52s | Max: 25m 31s | Hits:  99%/1852  
      🟩 TestGPU            Pass: 100%/4   | Total:  1h 32m | Avg: 23m 01s | Max: 38m 00s
    🟩 sm
      🟩 60;70;80;90        Pass: 100%/3   | Total:  1h 30m | Avg: 30m 19s | Max: 43m 29s
      🟩 90a                Pass: 100%/4   | Total:  1h 06m | Avg: 16m 42s | Max: 21m 48s
    🟩 std
      🟩 11                 Pass: 100%/30  | Total:  3h 21m | Avg:  6m 43s | Max: 38m 00s
      🟩 14                 Pass: 100%/29  | Total: 15h 54m | Avg: 32m 55s | Max:  1h 01m | Hits:  99%/3704  
      🟩 17                 Pass: 100%/27  | Total: 15h 47m | Avg: 35m 04s | Max:  1h 00m | Hits:  99%/1852  
      🟩 20                 Pass: 100%/23  | Total: 12h 23m | Avg: 32m 20s | Max:  1h 13m | Hits:  78%/3704  
    
  • 🟩 cub: Pass: 100%/110 | Total: 3d 01h | Avg: 40m 09s | Max: 1h 15m | Hits: 75%/3028

    🟩 cpu
      🟩 amd64              Pass: 100%/102 | Total:  2d 19h | Avg: 39m 45s | Max:  1h 15m | Hits:  75%/3028  
      🟩 arm64              Pass: 100%/8   | Total:  6h 01m | Avg: 45m 14s | Max:  1h 05m
    🟩 ctk
      🟩 11.1               Pass: 100%/15  | Total:  8h 09m | Avg: 32m 38s | Max:  1h 03m | Hits:  99%/757   
      🟩 11.8               Pass: 100%/3   | Total:  2h 37m | Avg: 52m 33s | Max:  1h 15m
      🟩 12.5               Pass: 100%/4   | Total:  3h 41m | Avg: 55m 17s | Max:  1h 15m
      🟩 12.6               Pass: 100%/88  | Total:  2d 11h | Avg: 40m 19s | Max:  1h 13m | Hits:  67%/2271  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/4   | Total:  3h 12m | Avg: 48m 06s | Max:  1h 04m
      🟩 nvcc11.1           Pass: 100%/15  | Total:  8h 09m | Avg: 32m 38s | Max:  1h 03m | Hits:  99%/757   
      🟩 nvcc11.8           Pass: 100%/3   | Total:  2h 37m | Avg: 52m 33s | Max:  1h 15m
      🟩 nvcc12.5           Pass: 100%/4   | Total:  3h 41m | Avg: 55m 17s | Max:  1h 15m
      🟩 nvcc12.6           Pass: 100%/84  | Total:  2d 07h | Avg: 39m 56s | Max:  1h 13m | Hits:  67%/2271  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/4   | Total:  3h 12m | Avg: 48m 06s | Max:  1h 04m
      🟩 nvcc               Pass: 100%/106 | Total:  2d 22h | Avg: 39m 51s | Max:  1h 15m | Hits:  75%/3028  
    🟩 cxx
      🟩 Clang9             Pass: 100%/6   | Total:  3h 50m | Avg: 38m 22s | Max: 58m 33s
      🟩 Clang10            Pass: 100%/3   | Total:  2h 04m | Avg: 41m 36s | Max: 57m 56s
      🟩 Clang11            Pass: 100%/4   | Total:  2h 55m | Avg: 43m 47s | Max: 57m 36s
      🟩 Clang12            Pass: 100%/4   | Total:  3h 03m | Avg: 45m 52s | Max:  1h 01m
      🟩 Clang13            Pass: 100%/4   | Total:  3h 03m | Avg: 45m 59s | Max: 59m 24s
      🟩 Clang14            Pass: 100%/4   | Total:  2h 57m | Avg: 44m 29s | Max: 58m 45s
      🟩 Clang15            Pass: 100%/4   | Total:  2h 58m | Avg: 44m 41s | Max: 57m 47s
      🟩 Clang16            Pass: 100%/4   | Total:  3h 02m | Avg: 45m 44s | Max: 59m 14s
      🟩 Clang17            Pass: 100%/4   | Total:  2h 54m | Avg: 43m 33s | Max: 56m 21s
      🟩 Clang18            Pass: 100%/11  | Total:  7h 47m | Avg: 42m 30s | Max:  1h 04m
      🟩 GCC6               Pass: 100%/2   | Total: 56m 37s | Avg: 28m 18s | Max: 52m 15s
      🟩 GCC7               Pass: 100%/6   | Total:  3h 33m | Avg: 35m 39s | Max: 53m 54s
      🟩 GCC8               Pass: 100%/6   | Total:  3h 34m | Avg: 35m 47s | Max: 54m 54s
      🟩 GCC9               Pass: 100%/6   | Total:  3h 53m | Avg: 38m 52s | Max:  1h 03m
      🟩 GCC10              Pass: 100%/4   | Total:  3h 10m | Avg: 47m 34s | Max:  1h 01m
      🟩 GCC11              Pass: 100%/7   | Total:  5h 33m | Avg: 47m 41s | Max:  1h 15m
      🟩 GCC12              Pass: 100%/4   | Total:  2h 52m | Avg: 43m 00s | Max: 55m 17s
      🟩 GCC13              Pass: 100%/16  | Total:  7h 33m | Avg: 28m 22s | Max:  1h 05m
      🟩 Intel2023.2.0      Pass: 100%/3   | Total:  2h 14m | Avg: 44m 47s | Max:  1h 04m
      🟩 MSVC14.16          Pass: 100%/1   | Total: 14m 08s | Avg: 14m 08s | Max: 14m 08s | Hits:  99%/757   
      🟩 MSVC14.29          Pass: 100%/2   | Total: 25m 23s | Avg: 12m 41s | Max: 14m 01s | Hits:  99%/1514  
      🟩 MSVC14.39          Pass: 100%/1   | Total:  1h 13m | Avg:  1h 13m | Max:  1h 13m | Hits:   3%/757   
      🟩 NVHPC24.7          Pass: 100%/4   | Total:  3h 41m | Avg: 55m 17s | Max:  1h 15m
    🟩 cxx_family
      🟩 Clang              Pass: 100%/48  | Total:  1d 10h | Avg: 43m 18s | Max:  1h 04m
      🟩 GCC                Pass: 100%/51  | Total:  1d 07h | Avg: 36m 38s | Max:  1h 15m
      🟩 Intel              Pass: 100%/3   | Total:  2h 14m | Avg: 44m 47s | Max:  1h 04m
      🟩 MSVC               Pass: 100%/4   | Total:  1h 53m | Avg: 28m 19s | Max:  1h 13m | Hits:  75%/3028  
      🟩 NVHPC              Pass: 100%/4   | Total:  3h 41m | Avg: 55m 17s | Max:  1h 15m
    🟩 gpu
      🟩 v100               Pass: 100%/110 | Total:  3d 01h | Avg: 40m 09s | Max:  1h 15m | Hits:  75%/3028  
    🟩 jobs
      🟩 Build              Pass: 100%/102 | Total:  2d 22h | Avg: 41m 40s | Max:  1h 15m | Hits:  75%/3028  
      🟩 DeviceLaunch       Pass: 100%/1   | Total: 22m 17s | Avg: 22m 17s | Max: 22m 17s
      🟩 GraphCapture       Pass: 100%/1   | Total: 19m 35s | Avg: 19m 35s | Max: 19m 35s
      🟩 HostLaunch         Pass: 100%/3   | Total: 59m 39s | Avg: 19m 53s | Max: 21m 08s
      🟩 TestGPU            Pass: 100%/3   | Total:  1h 04m | Avg: 21m 33s | Max: 25m 35s
    🟩 sm
      🟩 60;70;80;90        Pass: 100%/3   | Total:  2h 37m | Avg: 52m 33s | Max:  1h 15m
      🟩 90a                Pass: 100%/4   | Total:  1h 19m | Avg: 19m 54s | Max: 25m 47s
    🟩 std
      🟩 11                 Pass: 100%/30  | Total:  4h 18m | Avg:  8m 36s | Max: 19m 45s
      🟩 14                 Pass: 100%/29  | Total:  1d 01h | Avg: 52m 39s | Max:  1h 15m | Hits:  99%/1514  
      🟩 17                 Pass: 100%/27  | Total:  1d 00h | Avg: 54m 06s | Max:  1h 15m | Hits:  99%/757   
      🟩 20                 Pass: 100%/24  | Total: 19h 30m | Avg: 48m 47s | Max:  1h 13m | Hits:   3%/757   
    
  • 🟩 cudax: Pass: 100%/54 | Total: 5h 04m | Avg: 5m 37s | Max: 19m 21s | Hits: 61%/246

    🟩 cpu
      🟩 amd64              Pass: 100%/50  | Total:  4h 48m | Avg:  5m 46s | Max: 19m 21s | Hits:  61%/246   
      🟩 arm64              Pass: 100%/4   | Total: 15m 43s | Avg:  3m 55s | Max:  4m 15s
    🟩 ctk
      🟩 12.0               Pass: 100%/19  | Total:  1h 42m | Avg:  5m 22s | Max: 17m 54s | Hits:  61%/123   
      🟩 12.5               Pass: 100%/2   | Total: 12m 31s | Avg:  6m 15s | Max:  6m 27s
      🟩 12.6               Pass: 100%/33  | Total:  3h 09m | Avg:  5m 44s | Max: 19m 21s | Hits:  61%/123   
    🟩 cudacxx
      🟩 nvcc12.0           Pass: 100%/19  | Total:  1h 42m | Avg:  5m 22s | Max: 17m 54s | Hits:  61%/123   
      🟩 nvcc12.5           Pass: 100%/2   | Total: 12m 31s | Avg:  6m 15s | Max:  6m 27s
      🟩 nvcc12.6           Pass: 100%/33  | Total:  3h 09m | Avg:  5m 44s | Max: 19m 21s | Hits:  61%/123   
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/54  | Total:  5h 04m | Avg:  5m 37s | Max: 19m 21s | Hits:  61%/246   
    🟩 cxx
      🟩 Clang9             Pass: 100%/2   | Total:  8m 53s | Avg:  4m 26s | Max:  5m 18s
      🟩 Clang10            Pass: 100%/2   | Total:  8m 55s | Avg:  4m 27s | Max:  5m 21s
      🟩 Clang11            Pass: 100%/4   | Total: 15m 44s | Avg:  3m 56s | Max:  4m 20s
      🟩 Clang12            Pass: 100%/4   | Total: 15m 34s | Avg:  3m 53s | Max:  4m 25s
      🟩 Clang13            Pass: 100%/4   | Total: 16m 38s | Avg:  4m 09s | Max:  4m 45s
      🟩 Clang14            Pass: 100%/4   | Total: 30m 12s | Avg:  7m 33s | Max: 17m 54s
      🟩 Clang15            Pass: 100%/2   | Total:  9m 29s | Avg:  4m 44s | Max:  4m 49s
      🟩 Clang16            Pass: 100%/4   | Total: 16m 44s | Avg:  4m 11s | Max:  4m 43s
      🟩 Clang17            Pass: 100%/2   | Total:  8m 47s | Avg:  4m 23s | Max:  4m 43s
      🟩 Clang18            Pass: 100%/2   | Total: 20m 11s | Avg: 10m 05s | Max: 15m 46s
      🟩 GCC9               Pass: 100%/2   | Total:  7m 29s | Avg:  3m 44s | Max:  3m 58s
      🟩 GCC10              Pass: 100%/4   | Total: 16m 02s | Avg:  4m 00s | Max:  5m 03s
      🟩 GCC11              Pass: 100%/4   | Total: 15m 36s | Avg:  3m 54s | Max:  4m 40s
      🟩 GCC12              Pass: 100%/7   | Total:  1h 09m | Avg:  9m 51s | Max: 19m 21s
      🟩 GCC13              Pass: 100%/3   | Total: 12m 26s | Avg:  4m 08s | Max:  4m 22s
      🟩 MSVC14.36          Pass: 100%/1   | Total:  9m 26s | Avg:  9m 26s | Max:  9m 26s | Hits:  61%/123   
      🟩 MSVC14.39          Pass: 100%/1   | Total: 10m 29s | Avg: 10m 29s | Max: 10m 29s | Hits:  61%/123   
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 12m 31s | Avg:  6m 15s | Max:  6m 27s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/30  | Total:  2h 31m | Avg:  5m 02s | Max: 17m 54s
      🟩 GCC                Pass: 100%/20  | Total:  2h 00m | Avg:  6m 01s | Max: 19m 21s
      🟩 MSVC               Pass: 100%/2   | Total: 19m 55s | Avg:  9m 57s | Max: 10m 29s | Hits:  61%/246   
      🟩 NVHPC              Pass: 100%/2   | Total: 12m 31s | Avg:  6m 15s | Max:  6m 27s
    🟩 gpu
      🟩 v100               Pass: 100%/54  | Total:  5h 04m | Avg:  5m 37s | Max: 19m 21s | Hits:  61%/246   
    🟩 jobs
      🟩 Build              Pass: 100%/49  | Total:  3h 38m | Avg:  4m 26s | Max: 10m 29s | Hits:  61%/246   
      🟩 Test               Pass: 100%/5   | Total:  1h 26m | Avg: 17m 13s | Max: 19m 21s
    🟩 sm
      🟩 90                 Pass: 100%/1   | Total:  2m 57s | Avg:  2m 57s | Max:  2m 57s
      🟩 90a                Pass: 100%/1   | Total:  4m 22s | Avg:  4m 22s | Max:  4m 22s
    🟩 std
      🟩 17                 Pass: 100%/29  | Total:  2h 29m | Avg:  5m 09s | Max: 19m 21s
      🟩 20                 Pass: 100%/25  | Total:  2h 34m | Avg:  6m 11s | Max: 17m 54s | Hits:  61%/246   
    
  • 🟩 cccl_c_parallel: Pass: 100%/2 | Total: 10m 16s | Avg: 5m 08s | Max: 7m 35s

    🟩 cpu
      🟩 amd64              Pass: 100%/2   | Total: 10m 16s | Avg:  5m 08s | Max:  7m 35s
    🟩 ctk
      🟩 12.6               Pass: 100%/2   | Total: 10m 16s | Avg:  5m 08s | Max:  7m 35s
    🟩 cudacxx
      🟩 nvcc12.6           Pass: 100%/2   | Total: 10m 16s | Avg:  5m 08s | Max:  7m 35s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/2   | Total: 10m 16s | Avg:  5m 08s | Max:  7m 35s
    🟩 cxx
      🟩 GCC13              Pass: 100%/2   | Total: 10m 16s | Avg:  5m 08s | Max:  7m 35s
    🟩 cxx_family
      🟩 GCC                Pass: 100%/2   | Total: 10m 16s | Avg:  5m 08s | Max:  7m 35s
    🟩 gpu
      🟩 v100               Pass: 100%/2   | Total: 10m 16s | Avg:  5m 08s | Max:  7m 35s
    🟩 jobs
      🟩 Build              Pass: 100%/1   | Total:  2m 41s | Avg:  2m 41s | Max:  2m 41s
      🟩 Test               Pass: 100%/1   | Total:  7m 35s | Avg:  7m 35s | Max:  7m 35s
    
  • 🟩 python: Pass: 100%/1 | Total: 15m 00s | Avg: 15m 00s | Max: 15m 00s

    🟩 cpu
      🟩 amd64              Pass: 100%/1   | Total: 15m 00s | Avg: 15m 00s | Max: 15m 00s
    🟩 ctk
      🟩 12.6               Pass: 100%/1   | Total: 15m 00s | Avg: 15m 00s | Max: 15m 00s
    🟩 cudacxx
      🟩 nvcc12.6           Pass: 100%/1   | Total: 15m 00s | Avg: 15m 00s | Max: 15m 00s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/1   | Total: 15m 00s | Avg: 15m 00s | Max: 15m 00s
    🟩 cxx
      🟩 GCC13              Pass: 100%/1   | Total: 15m 00s | Avg: 15m 00s | Max: 15m 00s
    🟩 cxx_family
      🟩 GCC                Pass: 100%/1   | Total: 15m 00s | Avg: 15m 00s | Max: 15m 00s
    🟩 gpu
      🟩 v100               Pass: 100%/1   | Total: 15m 00s | Avg: 15m 00s | Max: 15m 00s
    🟩 jobs
      🟩 Test               Pass: 100%/1   | Total: 15m 00s | Avg: 15m 00s | Max: 15m 00s
    

👃 Inspect Changes

Modifications in project?

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

Modifications in project or dependencies?

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

🏃‍ Runner counts (total jobs: 396)

# Runner
327 linux-amd64-cpu16
28 linux-arm64-cpu16
26 linux-amd64-gpu-v100-latest-1
15 windows-amd64-cpu16

Copy link
Contributor

🟨 CI finished in 1h 11m: Pass: 88%/396 | Total: 2d 10h | Avg: 8m 54s | Max: 1h 02m | Hits: 88%/14829
  • 🟨 libcudacxx: Pass: 62%/118 | Total: 1d 03h | Avg: 13m 53s | Max: 43m 13s | Hits: 32%/2295

    🟨 jobs
      🟨 Build              Pass:  60%/110 | Total:  1d 00h | Avg: 13m 07s | Max: 35m 20s | Hits:  32%/2295  
      🟨 NVRTC              Pass:  75%/4   | Total:  1h 30m | Avg: 22m 43s | Max: 25m 09s
      🟩 Test               Pass: 100%/3   | Total:  1h 43m | Avg: 34m 27s | Max: 43m 13s
      🟩 VerifyCodegen      Pass: 100%/1   | Total:  2m 38s | Avg:  2m 38s | Max:  2m 38s
    🟨 std
      🟩 11                 Pass: 100%/32  | Total:  7h 13m | Avg: 13m 31s | Max: 38m 04s
      🟨 14                 Pass:   3%/32  | Total:  8h 02m | Avg: 15m 04s | Max: 35m 20s | Hits:  32%/2295  
      🟨 17                 Pass:  66%/30  | Total:  5h 49m | Avg: 11m 38s | Max: 28m 41s
      🟨 20                 Pass:  86%/23  | Total:  6h 12m | Avg: 16m 12s | Max: 43m 13s
    🟨 gpu
      🟨 v100               Pass:  62%/118 | Total:  1d 03h | Avg: 13m 53s | Max: 43m 13s | Hits:  32%/2295  
    🟨 cpu
      🟨 amd64              Pass:  61%/110 | Total:  1d 01h | Avg: 14m 05s | Max: 43m 13s | Hits:  32%/2295  
      🟨 arm64              Pass:  75%/8   | Total:  1h 29m | Avg: 11m 11s | Max: 27m 08s
    🟨 ctk
      🟨 11.1               Pass:  40%/15  | Total:  3h 21m | Avg: 13m 25s | Max: 31m 54s
      🟨 11.8               Pass:  66%/3   | Total: 49m 52s | Avg: 16m 37s | Max: 22m 34s
      🟨 12.5               Pass:  25%/4   | Total: 51m 48s | Avg: 12m 57s | Max: 31m 34s
      🟨 12.6               Pass:  67%/96  | Total: 22h 16m | Avg: 13m 55s | Max: 43m 13s | Hits:  32%/2295  
    🟨 cudacxx
      🟨 ClangCUDA18        Pass:  75%/12  | Total:  2h 25m | Avg: 12m 05s | Max: 19m 34s
      🟨 nvcc11.1           Pass:  40%/15  | Total:  3h 21m | Avg: 13m 25s | Max: 31m 54s
      🟨 nvcc11.8           Pass:  66%/3   | Total: 49m 52s | Avg: 16m 37s | Max: 22m 34s
      🟨 nvcc12.5           Pass:  25%/4   | Total: 51m 48s | Avg: 12m 57s | Max: 31m 34s
      🟨 nvcc12.6           Pass:  66%/84  | Total: 19h 51m | Avg: 14m 11s | Max: 43m 13s | Hits:  32%/2295  
    🟨 cudacxx_family
      🟨 ClangCUDA          Pass:  75%/12  | Total:  2h 25m | Avg: 12m 05s | Max: 19m 34s
      🟨 nvcc               Pass:  61%/106 | Total:  1d 00h | Avg: 14m 06s | Max: 43m 13s | Hits:  32%/2295  
    🟨 cxx
      🟨 Clang9             Pass:  66%/6   | Total:  1h 00m | Avg: 10m 09s | Max: 22m 45s
      🟨 Clang10            Pass:  66%/3   | Total: 52m 51s | Avg: 17m 37s | Max: 28m 01s
      🟨 Clang11            Pass:  75%/4   | Total: 48m 20s | Avg: 12m 05s | Max: 24m 18s
      🟨 Clang12            Pass:  75%/4   | Total: 42m 25s | Avg: 10m 36s | Max: 17m 49s
      🟨 Clang13            Pass:  75%/4   | Total: 54m 07s | Avg: 13m 31s | Max: 25m 42s
      🟨 Clang14            Pass:  75%/4   | Total: 58m 30s | Avg: 14m 37s | Max: 25m 34s
      🟨 Clang15            Pass:  75%/4   | Total: 57m 34s | Avg: 14m 23s | Max: 27m 09s
      🟨 Clang16            Pass:  75%/4   | Total: 35m 13s | Avg:  8m 48s | Max: 20m 36s
      🟨 Clang17            Pass:  75%/4   | Total: 43m 30s | Avg: 10m 52s | Max: 17m 31s
      🟨 Clang18            Pass:  77%/18  | Total:  4h 03m | Avg: 13m 31s | Max: 43m 13s
      🟨 GCC6               Pass:  50%/2   | Total: 36m 03s | Avg: 18m 01s | Max: 31m 54s
      🟨 GCC7               Pass:  33%/6   | Total:  1h 16m | Avg: 12m 46s | Max: 21m 48s
      🟨 GCC8               Pass:  33%/6   | Total:  1h 44m | Avg: 17m 29s | Max: 24m 34s
      🟨 GCC9               Pass:  33%/6   | Total:  1h 29m | Avg: 14m 57s | Max: 28m 41s
      🟨 GCC10              Pass:  25%/4   | Total:  1h 21m | Avg: 20m 24s | Max: 24m 53s
      🟨 GCC11              Pass:  71%/7   | Total:  1h 59m | Avg: 17m 08s | Max: 27m 49s
      🟨 GCC12              Pass:  75%/4   | Total: 55m 14s | Avg: 13m 48s | Max: 23m 45s
      🟨 GCC13              Pass:  82%/17  | Total:  3h 39m | Avg: 12m 53s | Max: 38m 04s
      🟨 Intel2023.2.0      Pass:  33%/3   | Total: 32m 40s | Avg: 10m 53s | Max: 24m 19s
      🟥 MSVC14.16          Pass:   0%/1   | Total: 19m 32s | Avg: 19m 32s | Max: 19m 32s
      🟨 MSVC14.29          Pass:  50%/2   | Total: 44m 52s | Avg: 22m 26s | Max: 35m 20s | Hits:  32%/2295  
      🟥 MSVC14.39          Pass:   0%/1   | Total: 10m 45s | Avg: 10m 45s | Max: 10m 45s
      🟨 NVHPC24.7          Pass:  25%/4   | Total: 51m 48s | Avg: 12m 57s | Max: 31m 34s
    🟨 cxx_family
      🟨 Clang              Pass:  74%/55  | Total: 11h 36m | Avg: 12m 40s | Max: 43m 13s
      🟨 GCC                Pass:  57%/52  | Total: 13h 03m | Avg: 15m 03s | Max: 38m 04s
      🟨 Intel              Pass:  33%/3   | Total: 32m 40s | Avg: 10m 53s | Max: 24m 19s
      🟨 MSVC               Pass:  25%/4   | Total:  1h 15m | Avg: 18m 47s | Max: 35m 20s | Hits:  32%/2295  
      🟨 NVHPC              Pass:  25%/4   | Total: 51m 48s | Avg: 12m 57s | Max: 31m 34s
    🟨 sm
      🟨 60;70;80;90        Pass:  66%/3   | Total: 49m 52s | Avg: 16m 37s | Max: 22m 34s
      🟨 90                 Pass:  75%/4   | Total: 41m 01s | Avg: 10m 15s | Max: 12m 12s
      🟨 90a                Pass:  75%/8   | Total: 58m 07s | Avg:  7m 15s | Max: 11m 54s
    
  • 🟩 thrust: Pass: 100%/111 | Total: 12h 00m | Avg: 6m 29s | Max: 25m 00s | Hits: 99%/9260

    🟩 cmake_options
      🟩 -DTHRUST_DISPATCH_TYPE=Force32bit Pass: 100%/2   | Total: 16m 33s | Avg:  8m 16s | Max: 10m 52s
    🟩 cpu
      🟩 amd64              Pass: 100%/103 | Total: 11h 22m | Avg:  6m 37s | Max: 25m 00s | Hits:  99%/9260  
      🟩 arm64              Pass: 100%/8   | Total: 38m 28s | Avg:  4m 48s | Max:  5m 24s
    🟩 ctk
      🟩 11.1               Pass: 100%/15  | Total:  1h 19m | Avg:  5m 16s | Max: 17m 28s | Hits:  99%/1852  
      🟩 11.8               Pass: 100%/3   | Total: 16m 13s | Avg:  5m 24s | Max:  6m 03s
      🟩 12.5               Pass: 100%/4   | Total:  1h 00m | Avg: 15m 06s | Max: 15m 40s
      🟩 12.6               Pass: 100%/89  | Total:  9h 24m | Avg:  6m 20s | Max: 25m 00s | Hits:  99%/7408  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/4   | Total: 19m 16s | Avg:  4m 49s | Max:  5m 17s
      🟩 nvcc11.1           Pass: 100%/15  | Total:  1h 19m | Avg:  5m 16s | Max: 17m 28s | Hits:  99%/1852  
      🟩 nvcc11.8           Pass: 100%/3   | Total: 16m 13s | Avg:  5m 24s | Max:  6m 03s
      🟩 nvcc12.5           Pass: 100%/4   | Total:  1h 00m | Avg: 15m 06s | Max: 15m 40s
      🟩 nvcc12.6           Pass: 100%/85  | Total:  9h 05m | Avg:  6m 25s | Max: 25m 00s | Hits:  99%/7408  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/4   | Total: 19m 16s | Avg:  4m 49s | Max:  5m 17s
      🟩 nvcc               Pass: 100%/107 | Total: 11h 41m | Avg:  6m 33s | Max: 25m 00s | Hits:  99%/9260  
    🟩 cxx
      🟩 Clang9             Pass: 100%/6   | Total: 31m 25s | Avg:  5m 14s | Max:  6m 19s
      🟩 Clang10            Pass: 100%/3   | Total: 19m 17s | Avg:  6m 25s | Max:  6m 36s
      🟩 Clang11            Pass: 100%/4   | Total: 21m 19s | Avg:  5m 19s | Max:  5m 54s
      🟩 Clang12            Pass: 100%/4   | Total: 21m 31s | Avg:  5m 22s | Max:  5m 53s
      🟩 Clang13            Pass: 100%/4   | Total: 20m 21s | Avg:  5m 05s | Max:  5m 25s
      🟩 Clang14            Pass: 100%/4   | Total: 20m 39s | Avg:  5m 09s | Max:  5m 42s
      🟩 Clang15            Pass: 100%/4   | Total: 21m 42s | Avg:  5m 25s | Max:  5m 50s
      🟩 Clang16            Pass: 100%/4   | Total: 21m 31s | Avg:  5m 22s | Max:  5m 42s
      🟩 Clang17            Pass: 100%/4   | Total: 20m 44s | Avg:  5m 11s | Max:  5m 22s
      🟩 Clang18            Pass: 100%/11  | Total:  1h 02m | Avg:  5m 43s | Max: 12m 39s
      🟩 GCC6               Pass: 100%/2   | Total:  8m 55s | Avg:  4m 27s | Max:  4m 37s
      🟩 GCC7               Pass: 100%/6   | Total: 27m 32s | Avg:  4m 35s | Max:  5m 23s
      🟩 GCC8               Pass: 100%/6   | Total: 28m 29s | Avg:  4m 44s | Max:  5m 32s
      🟩 GCC9               Pass: 100%/6   | Total: 28m 54s | Avg:  4m 49s | Max:  5m 37s
      🟩 GCC10              Pass: 100%/4   | Total: 21m 28s | Avg:  5m 22s | Max:  5m 32s
      🟩 GCC11              Pass: 100%/7   | Total: 37m 36s | Avg:  5m 22s | Max:  6m 04s
      🟩 GCC12              Pass: 100%/4   | Total: 22m 19s | Avg:  5m 34s | Max:  6m 25s
      🟩 GCC13              Pass: 100%/16  | Total:  1h 56m | Avg:  7m 16s | Max: 25m 00s
      🟩 Intel2023.2.0      Pass: 100%/3   | Total: 20m 41s | Avg:  6m 53s | Max:  7m 03s
      🟩 MSVC14.16          Pass: 100%/1   | Total: 17m 28s | Avg: 17m 28s | Max: 17m 28s | Hits:  99%/1852  
      🟩 MSVC14.29          Pass: 100%/2   | Total: 30m 56s | Avg: 15m 28s | Max: 15m 57s | Hits:  99%/3704  
      🟩 MSVC14.39          Pass: 100%/2   | Total: 37m 53s | Avg: 18m 56s | Max: 21m 54s | Hits:  99%/3704  
      🟩 NVHPC24.7          Pass: 100%/4   | Total:  1h 00m | Avg: 15m 06s | Max: 15m 40s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/48  | Total:  4h 21m | Avg:  5m 26s | Max: 12m 39s
      🟩 GCC                Pass: 100%/51  | Total:  4h 51m | Avg:  5m 43s | Max: 25m 00s
      🟩 Intel              Pass: 100%/3   | Total: 20m 41s | Avg:  6m 53s | Max:  7m 03s
      🟩 MSVC               Pass: 100%/5   | Total:  1h 26m | Avg: 17m 15s | Max: 21m 54s | Hits:  99%/9260  
      🟩 NVHPC              Pass: 100%/4   | Total:  1h 00m | Avg: 15m 06s | Max: 15m 40s
    🟩 gpu
      🟩 v100               Pass: 100%/111 | Total: 12h 00m | Avg:  6m 29s | Max: 25m 00s | Hits:  99%/9260  
    🟩 jobs
      🟩 Build              Pass: 100%/103 | Total: 10h 16m | Avg:  5m 59s | Max: 17m 28s | Hits:  99%/7408  
      🟩 TestCPU            Pass: 100%/4   | Total: 44m 05s | Avg: 11m 01s | Max: 21m 54s | Hits:  99%/1852  
      🟩 TestGPU            Pass: 100%/4   | Total: 59m 35s | Avg: 14m 53s | Max: 25m 00s
    🟩 sm
      🟩 60;70;80;90        Pass: 100%/3   | Total: 16m 13s | Avg:  5m 24s | Max:  6m 03s
      🟩 90a                Pass: 100%/4   | Total: 17m 11s | Avg:  4m 17s | Max:  4m 35s
    🟩 std
      🟩 11                 Pass: 100%/30  | Total:  2h 40m | Avg:  5m 21s | Max: 14m 24s
      🟩 14                 Pass: 100%/29  | Total:  3h 01m | Avg:  6m 16s | Max: 17m 28s | Hits:  99%/3704  
      🟩 17                 Pass: 100%/27  | Total:  2h 47m | Avg:  6m 12s | Max: 15m 39s | Hits:  99%/1852  
      🟩 20                 Pass: 100%/23  | Total:  3h 14m | Avg:  8m 26s | Max: 25m 00s | Hits:  99%/3704  
    
  • 🟩 cub: Pass: 100%/110 | Total: 14h 27m | Avg: 7m 53s | Max: 1h 02m | Hits: 99%/3028

    🟩 cpu
      🟩 amd64              Pass: 100%/102 | Total: 12h 47m | Avg:  7m 31s | Max: 37m 18s | Hits:  99%/3028  
      🟩 arm64              Pass: 100%/8   | Total:  1h 40m | Avg: 12m 30s | Max:  1h 02m
    🟩 ctk
      🟩 11.1               Pass: 100%/15  | Total:  1h 15m | Avg:  5m 00s | Max: 15m 22s | Hits:  99%/757   
      🟩 11.8               Pass: 100%/3   | Total: 16m 46s | Avg:  5m 35s | Max:  5m 51s
      🟩 12.5               Pass: 100%/4   | Total: 40m 11s | Avg: 10m 02s | Max: 11m 12s
      🟩 12.6               Pass: 100%/88  | Total: 12h 15m | Avg:  8m 21s | Max:  1h 02m | Hits:  99%/2271  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/4   | Total: 15m 57s | Avg:  3m 59s | Max:  4m 05s
      🟩 nvcc11.1           Pass: 100%/15  | Total:  1h 15m | Avg:  5m 00s | Max: 15m 22s | Hits:  99%/757   
      🟩 nvcc11.8           Pass: 100%/3   | Total: 16m 46s | Avg:  5m 35s | Max:  5m 51s
      🟩 nvcc12.5           Pass: 100%/4   | Total: 40m 11s | Avg: 10m 02s | Max: 11m 12s
      🟩 nvcc12.6           Pass: 100%/84  | Total: 11h 59m | Avg:  8m 34s | Max:  1h 02m | Hits:  99%/2271  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/4   | Total: 15m 57s | Avg:  3m 59s | Max:  4m 05s
      🟩 nvcc               Pass: 100%/106 | Total: 14h 11m | Avg:  8m 02s | Max:  1h 02m | Hits:  99%/3028  
    🟩 cxx
      🟩 Clang9             Pass: 100%/6   | Total: 33m 23s | Avg:  5m 33s | Max:  7m 01s
      🟩 Clang10            Pass: 100%/3   | Total: 17m 38s | Avg:  5m 52s | Max:  6m 05s
      🟩 Clang11            Pass: 100%/4   | Total: 21m 00s | Avg:  5m 15s | Max:  5m 35s
      🟩 Clang12            Pass: 100%/4   | Total: 21m 58s | Avg:  5m 29s | Max:  5m 54s
      🟩 Clang13            Pass: 100%/4   | Total: 21m 56s | Avg:  5m 29s | Max:  5m 53s
      🟩 Clang14            Pass: 100%/4   | Total: 21m 36s | Avg:  5m 24s | Max:  6m 07s
      🟩 Clang15            Pass: 100%/4   | Total: 21m 42s | Avg:  5m 25s | Max:  5m 48s
      🟩 Clang16            Pass: 100%/4   | Total: 22m 38s | Avg:  5m 39s | Max:  6m 08s
      🟩 Clang17            Pass: 100%/4   | Total: 21m 16s | Avg:  5m 19s | Max:  5m 32s
      🟩 Clang18            Pass: 100%/11  | Total:  1h 25m | Avg:  7m 45s | Max: 24m 56s
      🟩 GCC6               Pass: 100%/2   | Total:  8m 38s | Avg:  4m 19s | Max:  4m 42s
      🟩 GCC7               Pass: 100%/6   | Total: 29m 55s | Avg:  4m 59s | Max:  6m 00s
      🟩 GCC8               Pass: 100%/6   | Total: 29m 19s | Avg:  4m 53s | Max:  5m 40s
      🟩 GCC9               Pass: 100%/6   | Total: 30m 04s | Avg:  5m 00s | Max:  6m 10s
      🟩 GCC10              Pass: 100%/4   | Total: 24m 16s | Avg:  6m 04s | Max:  6m 34s
      🟩 GCC11              Pass: 100%/7   | Total: 40m 36s | Avg:  5m 48s | Max:  7m 02s
      🟩 GCC12              Pass: 100%/4   | Total: 24m 02s | Avg:  6m 00s | Max:  6m 47s
      🟩 GCC13              Pass: 100%/16  | Total:  4h 38m | Avg: 17m 23s | Max:  1h 02m
      🟩 Intel2023.2.0      Pass: 100%/3   | Total: 21m 12s | Avg:  7m 04s | Max:  7m 16s
      🟩 MSVC14.16          Pass: 100%/1   | Total: 15m 22s | Avg: 15m 22s | Max: 15m 22s | Hits:  99%/757   
      🟩 MSVC14.29          Pass: 100%/2   | Total: 24m 41s | Avg: 12m 20s | Max: 12m 30s | Hits:  99%/1514  
      🟩 MSVC14.39          Pass: 100%/1   | Total: 12m 33s | Avg: 12m 33s | Max: 12m 33s | Hits:  99%/757   
      🟩 NVHPC24.7          Pass: 100%/4   | Total: 40m 11s | Avg: 10m 02s | Max: 11m 12s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/48  | Total:  4h 48m | Avg:  6m 00s | Max: 24m 56s
      🟩 GCC                Pass: 100%/51  | Total:  7h 45m | Avg:  9m 07s | Max:  1h 02m
      🟩 Intel              Pass: 100%/3   | Total: 21m 12s | Avg:  7m 04s | Max:  7m 16s
      🟩 MSVC               Pass: 100%/4   | Total: 52m 36s | Avg: 13m 09s | Max: 15m 22s | Hits:  99%/3028  
      🟩 NVHPC              Pass: 100%/4   | Total: 40m 11s | Avg: 10m 02s | Max: 11m 12s
    🟩 gpu
      🟩 v100               Pass: 100%/110 | Total: 14h 27m | Avg:  7m 53s | Max:  1h 02m | Hits:  99%/3028  
    🟩 jobs
      🟩 Build              Pass: 100%/102 | Total: 10h 55m | Avg:  6m 25s | Max:  1h 02m | Hits:  99%/3028  
      🟩 DeviceLaunch       Pass: 100%/1   | Total: 37m 18s | Avg: 37m 18s | Max: 37m 18s
      🟩 GraphCapture       Pass: 100%/1   | Total: 32m 47s | Avg: 32m 47s | Max: 32m 47s
      🟩 HostLaunch         Pass: 100%/3   | Total:  1h 13m | Avg: 24m 29s | Max: 36m 01s
      🟩 TestGPU            Pass: 100%/3   | Total:  1h 08m | Avg: 22m 58s | Max: 24m 56s
    🟩 sm
      🟩 60;70;80;90        Pass: 100%/3   | Total: 16m 46s | Avg:  5m 35s | Max:  5m 51s
      🟩 90a                Pass: 100%/4   | Total: 18m 29s | Avg:  4m 37s | Max:  5m 02s
    🟩 std
      🟩 11                 Pass: 100%/30  | Total:  3h 27m | Avg:  6m 55s | Max: 36m 01s
      🟩 14                 Pass: 100%/29  | Total:  3h 52m | Avg:  8m 01s | Max:  1h 02m | Hits:  99%/1514  
      🟩 17                 Pass: 100%/27  | Total:  2h 42m | Avg:  6m 00s | Max: 12m 30s | Hits:  99%/757   
      🟩 20                 Pass: 100%/24  | Total:  4h 24m | Avg: 11m 02s | Max: 37m 18s | Hits:  99%/757   
    
  • 🟩 cudax: Pass: 100%/54 | Total: 4h 32m | Avg: 5m 03s | Max: 17m 16s | Hits: 90%/246

    🟩 cpu
      🟩 amd64              Pass: 100%/50  | Total:  4h 20m | Avg:  5m 12s | Max: 17m 16s | Hits:  90%/246   
      🟩 arm64              Pass: 100%/4   | Total: 12m 37s | Avg:  3m 09s | Max:  3m 14s
    🟩 ctk
      🟩 12.0               Pass: 100%/19  | Total:  1h 37m | Avg:  5m 08s | Max: 17m 12s | Hits:  90%/123   
      🟩 12.5               Pass: 100%/2   | Total: 12m 45s | Avg:  6m 22s | Max:  6m 29s
      🟩 12.6               Pass: 100%/33  | Total:  2h 42m | Avg:  4m 55s | Max: 17m 16s | Hits:  90%/123   
    🟩 cudacxx
      🟩 nvcc12.0           Pass: 100%/19  | Total:  1h 37m | Avg:  5m 08s | Max: 17m 12s | Hits:  90%/123   
      🟩 nvcc12.5           Pass: 100%/2   | Total: 12m 45s | Avg:  6m 22s | Max:  6m 29s
      🟩 nvcc12.6           Pass: 100%/33  | Total:  2h 42m | Avg:  4m 55s | Max: 17m 16s | Hits:  90%/123   
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/54  | Total:  4h 32m | Avg:  5m 03s | Max: 17m 16s | Hits:  90%/246   
    🟩 cxx
      🟩 Clang9             Pass: 100%/2   | Total:  7m 44s | Avg:  3m 52s | Max:  3m 58s
      🟩 Clang10            Pass: 100%/2   | Total:  7m 33s | Avg:  3m 46s | Max:  3m 59s
      🟩 Clang11            Pass: 100%/4   | Total: 14m 26s | Avg:  3m 36s | Max:  3m 55s
      🟩 Clang12            Pass: 100%/4   | Total: 13m 42s | Avg:  3m 25s | Max:  3m 43s
      🟩 Clang13            Pass: 100%/4   | Total: 14m 11s | Avg:  3m 32s | Max:  3m 48s
      🟩 Clang14            Pass: 100%/4   | Total: 26m 05s | Avg:  6m 31s | Max: 16m 10s
      🟩 Clang15            Pass: 100%/2   | Total:  7m 45s | Avg:  3m 52s | Max:  3m 57s
      🟩 Clang16            Pass: 100%/4   | Total: 14m 04s | Avg:  3m 31s | Max:  3m 55s
      🟩 Clang17            Pass: 100%/2   | Total:  7m 05s | Avg:  3m 32s | Max:  3m 54s
      🟩 Clang18            Pass: 100%/2   | Total: 19m 22s | Avg:  9m 41s | Max: 16m 18s
      🟩 GCC9               Pass: 100%/2   | Total:  8m 00s | Avg:  4m 00s | Max:  4m 04s
      🟩 GCC10              Pass: 100%/4   | Total: 15m 03s | Avg:  3m 45s | Max:  3m 54s
      🟩 GCC11              Pass: 100%/4   | Total: 14m 27s | Avg:  3m 36s | Max:  3m 49s
      🟩 GCC12              Pass: 100%/7   | Total:  1h 03m | Avg:  9m 07s | Max: 17m 16s
      🟩 GCC13              Pass: 100%/3   | Total: 10m 03s | Avg:  3m 21s | Max:  3m 53s
      🟩 MSVC14.36          Pass: 100%/1   | Total:  8m 02s | Avg:  8m 02s | Max:  8m 02s | Hits:  90%/123   
      🟩 MSVC14.39          Pass: 100%/1   | Total:  8m 37s | Avg:  8m 37s | Max:  8m 37s | Hits:  90%/123   
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 12m 45s | Avg:  6m 22s | Max:  6m 29s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/30  | Total:  2h 11m | Avg:  4m 23s | Max: 16m 18s
      🟩 GCC                Pass: 100%/20  | Total:  1h 51m | Avg:  5m 34s | Max: 17m 16s
      🟩 MSVC               Pass: 100%/2   | Total: 16m 39s | Avg:  8m 19s | Max:  8m 37s | Hits:  90%/246   
      🟩 NVHPC              Pass: 100%/2   | Total: 12m 45s | Avg:  6m 22s | Max:  6m 29s
    🟩 gpu
      🟩 v100               Pass: 100%/54  | Total:  4h 32m | Avg:  5m 03s | Max: 17m 16s | Hits:  90%/246   
    🟩 jobs
      🟩 Build              Pass: 100%/49  | Total:  3h 09m | Avg:  3m 52s | Max:  8m 37s | Hits:  90%/246   
      🟩 Test               Pass: 100%/5   | Total:  1h 23m | Avg: 16m 39s | Max: 17m 16s
    🟩 sm
      🟩 90                 Pass: 100%/1   | Total:  3m 49s | Avg:  3m 49s | Max:  3m 49s
      🟩 90a                Pass: 100%/1   | Total:  3m 53s | Avg:  3m 53s | Max:  3m 53s
    🟩 std
      🟩 17                 Pass: 100%/29  | Total:  2h 14m | Avg:  4m 38s | Max: 17m 12s
      🟩 20                 Pass: 100%/25  | Total:  2h 17m | Avg:  5m 31s | Max: 17m 16s | Hits:  90%/246   
    
  • 🟩 cccl_c_parallel: Pass: 100%/2 | Total: 9m 49s | Avg: 4m 54s | Max: 7m 44s

    🟩 cpu
      🟩 amd64              Pass: 100%/2   | Total:  9m 49s | Avg:  4m 54s | Max:  7m 44s
    🟩 ctk
      🟩 12.6               Pass: 100%/2   | Total:  9m 49s | Avg:  4m 54s | Max:  7m 44s
    🟩 cudacxx
      🟩 nvcc12.6           Pass: 100%/2   | Total:  9m 49s | Avg:  4m 54s | Max:  7m 44s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/2   | Total:  9m 49s | Avg:  4m 54s | Max:  7m 44s
    🟩 cxx
      🟩 GCC13              Pass: 100%/2   | Total:  9m 49s | Avg:  4m 54s | Max:  7m 44s
    🟩 cxx_family
      🟩 GCC                Pass: 100%/2   | Total:  9m 49s | Avg:  4m 54s | Max:  7m 44s
    🟩 gpu
      🟩 v100               Pass: 100%/2   | Total:  9m 49s | Avg:  4m 54s | Max:  7m 44s
    🟩 jobs
      🟩 Build              Pass: 100%/1   | Total:  2m 05s | Avg:  2m 05s | Max:  2m 05s
      🟩 Test               Pass: 100%/1   | Total:  7m 44s | Avg:  7m 44s | Max:  7m 44s
    
  • 🟩 python: Pass: 100%/1 | Total: 15m 25s | Avg: 15m 25s | Max: 15m 25s

    🟩 cpu
      🟩 amd64              Pass: 100%/1   | Total: 15m 25s | Avg: 15m 25s | Max: 15m 25s
    🟩 ctk
      🟩 12.6               Pass: 100%/1   | Total: 15m 25s | Avg: 15m 25s | Max: 15m 25s
    🟩 cudacxx
      🟩 nvcc12.6           Pass: 100%/1   | Total: 15m 25s | Avg: 15m 25s | Max: 15m 25s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/1   | Total: 15m 25s | Avg: 15m 25s | Max: 15m 25s
    🟩 cxx
      🟩 GCC13              Pass: 100%/1   | Total: 15m 25s | Avg: 15m 25s | Max: 15m 25s
    🟩 cxx_family
      🟩 GCC                Pass: 100%/1   | Total: 15m 25s | Avg: 15m 25s | Max: 15m 25s
    🟩 gpu
      🟩 v100               Pass: 100%/1   | Total: 15m 25s | Avg: 15m 25s | Max: 15m 25s
    🟩 jobs
      🟩 Test               Pass: 100%/1   | Total: 15m 25s | Avg: 15m 25s | Max: 15m 25s
    

👃 Inspect Changes

Modifications in project?

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

Modifications in project or dependencies?

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

🏃‍ Runner counts (total jobs: 396)

# Runner
327 linux-amd64-cpu16
28 linux-arm64-cpu16
26 linux-amd64-gpu-v100-latest-1
15 windows-amd64-cpu16

@fbusato fbusato marked this pull request as ready for review November 26, 2024 23:45
@fbusato fbusato requested review from a team as code owners November 26, 2024 23:45
@fbusato fbusato requested review from miscco and alliepiper November 26, 2024 23:45
@fbusato fbusato changed the title [DRAFT] std::linalg accessors std::linalg accessors and transposed_layout Nov 26, 2024
@fbusato fbusato self-assigned this Nov 26, 2024
Copy link
Contributor

🟨 CI finished in 1h 55m: Pass: 96%/396 | Total: 2d 00h | Avg: 7m 17s | Max: 49m 30s | Hits: 98%/19910
  • 🟨 libcudacxx: Pass: 88%/118 | Total: 16h 38m | Avg: 8m 27s | Max: 47m 13s | Hits: 98%/7366

    🔍 cpu: amd64 🔍
      🔍 amd64              Pass:  88%/110 | Total: 16h 10m | Avg:  8m 49s | Max: 47m 13s | Hits:  98%/7366  
      🟩 arm64              Pass: 100%/8   | Total: 27m 33s | Avg:  3m 26s | Max:  4m 15s
    🔍 cudacxx_family: nvcc 🔍
      🟩 ClangCUDA          Pass: 100%/12  | Total:  2h 22m | Avg: 11m 50s | Max: 18m 49s
      🔍 nvcc               Pass:  87%/106 | Total: 14h 16m | Avg:  8m 04s | Max: 47m 13s | Hits:  98%/7366  
    🟨 ctk
      🟨 11.1               Pass:  66%/15  | Total:  1h 31m | Avg:  6m 04s | Max: 24m 08s
      🟩 11.8               Pass: 100%/3   | Total: 55m 47s | Avg: 18m 35s | Max: 26m 58s
      🟩 12.5               Pass: 100%/4   | Total:  1h 29m | Avg: 22m 23s | Max: 42m 51s
      🟨 12.6               Pass:  91%/96  | Total: 12h 41m | Avg:  7m 56s | Max: 47m 13s | Hits:  98%/7366  
    🟨 cudacxx
      🟩 ClangCUDA18        Pass: 100%/12  | Total:  2h 22m | Avg: 11m 50s | Max: 18m 49s
      🟨 nvcc11.1           Pass:  66%/15  | Total:  1h 31m | Avg:  6m 04s | Max: 24m 08s
      🟩 nvcc11.8           Pass: 100%/3   | Total: 55m 47s | Avg: 18m 35s | Max: 26m 58s
      🟩 nvcc12.5           Pass: 100%/4   | Total:  1h 29m | Avg: 22m 23s | Max: 42m 51s
      🟨 nvcc12.6           Pass:  90%/84  | Total: 10h 19m | Avg:  7m 22s | Max: 47m 13s | Hits:  98%/7366  
    🟨 cxx
      🟨 Clang9             Pass:  83%/6   | Total: 23m 40s | Avg:  3m 56s | Max:  5m 22s
      🟩 Clang10            Pass: 100%/3   | Total: 33m 42s | Avg: 11m 14s | Max: 24m 33s
      🟩 Clang11            Pass: 100%/4   | Total: 16m 44s | Avg:  4m 11s | Max:  4m 35s
      🟩 Clang12            Pass: 100%/4   | Total: 17m 08s | Avg:  4m 17s | Max:  4m 44s
      🟩 Clang13            Pass: 100%/4   | Total: 16m 27s | Avg:  4m 06s | Max:  4m 37s
      🟩 Clang14            Pass: 100%/4   | Total: 16m 16s | Avg:  4m 04s | Max:  4m 18s
      🟩 Clang15            Pass: 100%/4   | Total: 59m 00s | Avg: 14m 45s | Max: 26m 41s
      🟩 Clang16            Pass: 100%/4   | Total: 17m 50s | Avg:  4m 27s | Max:  5m 37s
      🟩 Clang17            Pass: 100%/4   | Total: 18m 50s | Avg:  4m 42s | Max:  5m 48s
      🟩 Clang18            Pass: 100%/18  | Total:  2h 59m | Avg:  9m 58s | Max: 18m 49s
      🟩 GCC6               Pass: 100%/2   | Total: 27m 19s | Avg: 13m 39s | Max: 24m 08s
      🟨 GCC7               Pass:  66%/6   | Total: 16m 37s | Avg:  2m 46s | Max:  3m 38s
      🟨 GCC8               Pass:  66%/6   | Total: 32m 17s | Avg:  5m 22s | Max: 18m 22s
      🟨 GCC9               Pass:  66%/6   | Total: 17m 42s | Avg:  2m 57s | Max:  3m 40s
      🟨 GCC10              Pass:  50%/4   | Total: 22m 14s | Avg:  5m 33s | Max: 11m 30s
      🟩 GCC11              Pass: 100%/7   | Total:  1h 32m | Avg: 13m 14s | Max: 26m 58s
      🟩 GCC12              Pass: 100%/4   | Total: 15m 59s | Avg:  3m 59s | Max:  4m 56s
      🟨 GCC13              Pass:  82%/17  | Total:  3h 32m | Avg: 12m 28s | Max: 47m 13s
      🟩 Intel2023.2.0      Pass: 100%/3   | Total: 15m 33s | Avg:  5m 11s | Max:  5m 46s
      🟥 MSVC14.16          Pass:   0%/1   | Total: 15m 35s | Avg: 15m 35s | Max: 15m 35s
      🟩 MSVC14.29          Pass: 100%/2   | Total: 26m 50s | Avg: 13m 25s | Max: 13m 56s | Hits:  98%/4753  
      🟩 MSVC14.39          Pass: 100%/1   | Total: 14m 35s | Avg: 14m 35s | Max: 14m 35s | Hits:  98%/2613  
      🟩 NVHPC24.7          Pass: 100%/4   | Total:  1h 29m | Avg: 22m 23s | Max: 42m 51s
    🟨 cxx_family
      🟨 Clang              Pass:  98%/55  | Total:  6h 39m | Avg:  7m 15s | Max: 26m 41s
      🟨 GCC                Pass:  78%/52  | Total:  7h 16m | Avg:  8m 24s | Max: 47m 13s
      🟩 Intel              Pass: 100%/3   | Total: 15m 33s | Avg:  5m 11s | Max:  5m 46s
      🟨 MSVC               Pass:  75%/4   | Total: 57m 00s | Avg: 14m 15s | Max: 15m 35s | Hits:  98%/7366  
      🟩 NVHPC              Pass: 100%/4   | Total:  1h 29m | Avg: 22m 23s | Max: 42m 51s
    🟨 jobs
      🟨 Build              Pass:  90%/110 | Total: 13h 21m | Avg:  7m 17s | Max: 42m 51s | Hits:  98%/7366  
      🟨 NVRTC              Pass:  50%/4   | Total:  1h 44m | Avg: 26m 11s | Max: 28m 05s
      🟨 Test               Pass:  66%/3   | Total:  1h 29m | Avg: 29m 50s | Max: 47m 13s
      🟩 VerifyCodegen      Pass: 100%/1   | Total:  2m 02s | Avg:  2m 02s | Max:  2m 02s
    🟨 gpu
      🟨 v100               Pass:  88%/118 | Total: 16h 38m | Avg:  8m 27s | Max: 47m 13s | Hits:  98%/7366  
    🟩 sm
      🟩 60;70;80;90        Pass: 100%/3   | Total: 55m 47s | Avg: 18m 35s | Max: 26m 58s
      🟩 90                 Pass: 100%/4   | Total: 40m 44s | Avg: 10m 11s | Max: 12m 10s
      🟩 90a                Pass: 100%/8   | Total: 53m 51s | Avg:  6m 43s | Max: 12m 25s
    🟨 std
      🟨 11                 Pass:  96%/32  | Total:  3h 32m | Avg:  6m 38s | Max: 47m 13s
      🟨 14                 Pass:  96%/32  | Total:  4h 40m | Avg:  8m 46s | Max: 31m 01s | Hits:  98%/2298  
      🟨 17                 Pass:  70%/30  | Total:  4h 17m | Avg:  8m 34s | Max: 42m 51s | Hits:  98%/2455  
      🟨 20                 Pass:  91%/23  | Total:  4h 05m | Avg: 10m 40s | Max: 27m 59s | Hits:  98%/2613  
    
  • 🟩 thrust: Pass: 100%/111 | Total: 12h 28m | Avg: 6m 44s | Max: 24m 21s | Hits: 99%/9260

    🟩 cmake_options
      🟩 -DTHRUST_DISPATCH_TYPE=Force32bit Pass: 100%/2   | Total: 23m 47s | Avg: 11m 53s | Max: 17m 52s
    🟩 cpu
      🟩 amd64              Pass: 100%/103 | Total: 11h 49m | Avg:  6m 53s | Max: 24m 21s | Hits:  99%/9260  
      🟩 arm64              Pass: 100%/8   | Total: 38m 42s | Avg:  4m 50s | Max:  5m 26s
    🟩 ctk
      🟩 11.1               Pass: 100%/15  | Total:  1h 17m | Avg:  5m 08s | Max: 18m 42s | Hits:  99%/1852  
      🟩 11.8               Pass: 100%/3   | Total: 16m 13s | Avg:  5m 24s | Max:  5m 29s
      🟩 12.5               Pass: 100%/4   | Total: 57m 26s | Avg: 14m 21s | Max: 15m 20s
      🟩 12.6               Pass: 100%/89  | Total:  9h 57m | Avg:  6m 43s | Max: 24m 21s | Hits:  99%/7408  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/4   | Total: 19m 21s | Avg:  4m 50s | Max:  5m 43s
      🟩 nvcc11.1           Pass: 100%/15  | Total:  1h 17m | Avg:  5m 08s | Max: 18m 42s | Hits:  99%/1852  
      🟩 nvcc11.8           Pass: 100%/3   | Total: 16m 13s | Avg:  5m 24s | Max:  5m 29s
      🟩 nvcc12.5           Pass: 100%/4   | Total: 57m 26s | Avg: 14m 21s | Max: 15m 20s
      🟩 nvcc12.6           Pass: 100%/85  | Total:  9h 38m | Avg:  6m 48s | Max: 24m 21s | Hits:  99%/7408  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/4   | Total: 19m 21s | Avg:  4m 50s | Max:  5m 43s
      🟩 nvcc               Pass: 100%/107 | Total: 12h 09m | Avg:  6m 48s | Max: 24m 21s | Hits:  99%/9260  
    🟩 cxx
      🟩 Clang9             Pass: 100%/6   | Total: 31m 32s | Avg:  5m 15s | Max:  6m 23s
      🟩 Clang10            Pass: 100%/3   | Total: 19m 04s | Avg:  6m 21s | Max:  7m 00s
      🟩 Clang11            Pass: 100%/4   | Total: 21m 45s | Avg:  5m 26s | Max:  6m 56s
      🟩 Clang12            Pass: 100%/4   | Total: 20m 03s | Avg:  5m 00s | Max:  5m 19s
      🟩 Clang13            Pass: 100%/4   | Total: 20m 04s | Avg:  5m 01s | Max:  5m 09s
      🟩 Clang14            Pass: 100%/4   | Total: 20m 00s | Avg:  5m 00s | Max:  5m 16s
      🟩 Clang15            Pass: 100%/4   | Total: 20m 25s | Avg:  5m 06s | Max:  5m 18s
      🟩 Clang16            Pass: 100%/4   | Total: 20m 49s | Avg:  5m 12s | Max:  5m 27s
      🟩 Clang17            Pass: 100%/4   | Total: 20m 08s | Avg:  5m 02s | Max:  5m 32s
      🟩 Clang18            Pass: 100%/11  | Total:  1h 10m | Avg:  6m 23s | Max: 19m 31s
      🟩 GCC6               Pass: 100%/2   | Total:  7m 43s | Avg:  3m 51s | Max:  4m 00s
      🟩 GCC7               Pass: 100%/6   | Total: 27m 08s | Avg:  4m 31s | Max:  5m 32s
      🟩 GCC8               Pass: 100%/6   | Total: 28m 05s | Avg:  4m 40s | Max:  5m 38s
      🟩 GCC9               Pass: 100%/6   | Total: 29m 23s | Avg:  4m 53s | Max:  5m 53s
      🟩 GCC10              Pass: 100%/4   | Total: 21m 16s | Avg:  5m 19s | Max:  5m 41s
      🟩 GCC11              Pass: 100%/7   | Total: 37m 52s | Avg:  5m 24s | Max:  5m 39s
      🟩 GCC12              Pass: 100%/4   | Total: 21m 55s | Avg:  5m 28s | Max:  5m 51s
      🟩 GCC13              Pass: 100%/16  | Total:  2h 17m | Avg:  8m 34s | Max: 20m 35s
      🟩 Intel2023.2.0      Pass: 100%/3   | Total: 20m 05s | Avg:  6m 41s | Max:  7m 19s
      🟩 MSVC14.16          Pass: 100%/1   | Total: 18m 42s | Avg: 18m 42s | Max: 18m 42s | Hits:  99%/1852  
      🟩 MSVC14.29          Pass: 100%/2   | Total: 34m 36s | Avg: 17m 18s | Max: 18m 04s | Hits:  99%/3704  
      🟩 MSVC14.39          Pass: 100%/2   | Total: 43m 04s | Avg: 21m 32s | Max: 24m 21s | Hits:  99%/3704  
      🟩 NVHPC24.7          Pass: 100%/4   | Total: 57m 26s | Avg: 14m 21s | Max: 15m 20s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/48  | Total:  4h 24m | Avg:  5m 30s | Max: 19m 31s
      🟩 GCC                Pass: 100%/51  | Total:  5h 10m | Avg:  6m 05s | Max: 20m 35s
      🟩 Intel              Pass: 100%/3   | Total: 20m 05s | Avg:  6m 41s | Max:  7m 19s
      🟩 MSVC               Pass: 100%/5   | Total:  1h 36m | Avg: 19m 16s | Max: 24m 21s | Hits:  99%/9260  
      🟩 NVHPC              Pass: 100%/4   | Total: 57m 26s | Avg: 14m 21s | Max: 15m 20s
    🟩 gpu
      🟩 v100               Pass: 100%/111 | Total: 12h 28m | Avg:  6m 44s | Max: 24m 21s | Hits:  99%/9260  
    🟩 jobs
      🟩 Build              Pass: 100%/103 | Total: 10h 29m | Avg:  6m 06s | Max: 19m 23s | Hits:  99%/7408  
      🟩 TestCPU            Pass: 100%/4   | Total: 47m 17s | Avg: 11m 49s | Max: 24m 21s | Hits:  99%/1852  
      🟩 TestGPU            Pass: 100%/4   | Total:  1h 12m | Avg: 18m 03s | Max: 20m 35s
    🟩 sm
      🟩 60;70;80;90        Pass: 100%/3   | Total: 16m 13s | Avg:  5m 24s | Max:  5m 29s
      🟩 90a                Pass: 100%/4   | Total: 32m 29s | Avg:  8m 07s | Max: 19m 23s
    🟩 std
      🟩 11                 Pass: 100%/30  | Total:  2h 47m | Avg:  5m 34s | Max: 20m 35s
      🟩 14                 Pass: 100%/29  | Total:  3h 03m | Avg:  6m 19s | Max: 18m 42s | Hits:  99%/3704  
      🟩 17                 Pass: 100%/27  | Total:  3h 03m | Avg:  6m 46s | Max: 19m 23s | Hits:  99%/1852  
      🟩 20                 Pass: 100%/23  | Total:  3h 11m | Avg:  8m 19s | Max: 24m 21s | Hits:  99%/3704  
    
  • 🟩 cub: Pass: 100%/110 | Total: 13h 54m | Avg: 7m 35s | Max: 49m 30s | Hits: 99%/3028

    🟩 cpu
      🟩 amd64              Pass: 100%/102 | Total: 13h 16m | Avg:  7m 48s | Max: 49m 30s | Hits:  99%/3028  
      🟩 arm64              Pass: 100%/8   | Total: 38m 25s | Avg:  4m 48s | Max:  5m 06s
    🟩 ctk
      🟩 11.1               Pass: 100%/15  | Total:  1h 17m | Avg:  5m 11s | Max: 15m 31s | Hits:  99%/757   
      🟩 11.8               Pass: 100%/3   | Total: 16m 38s | Avg:  5m 32s | Max:  5m 51s
      🟩 12.5               Pass: 100%/4   | Total: 35m 27s | Avg:  8m 51s | Max:  9m 12s
      🟩 12.6               Pass: 100%/88  | Total: 11h 44m | Avg:  8m 00s | Max: 49m 30s | Hits:  99%/2271  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/4   | Total: 16m 43s | Avg:  4m 10s | Max:  4m 28s
      🟩 nvcc11.1           Pass: 100%/15  | Total:  1h 17m | Avg:  5m 11s | Max: 15m 31s | Hits:  99%/757   
      🟩 nvcc11.8           Pass: 100%/3   | Total: 16m 38s | Avg:  5m 32s | Max:  5m 51s
      🟩 nvcc12.5           Pass: 100%/4   | Total: 35m 27s | Avg:  8m 51s | Max:  9m 12s
      🟩 nvcc12.6           Pass: 100%/84  | Total: 11h 28m | Avg:  8m 11s | Max: 49m 30s | Hits:  99%/2271  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/4   | Total: 16m 43s | Avg:  4m 10s | Max:  4m 28s
      🟩 nvcc               Pass: 100%/106 | Total: 13h 38m | Avg:  7m 43s | Max: 49m 30s | Hits:  99%/3028  
    🟩 cxx
      🟩 Clang9             Pass: 100%/6   | Total: 30m 24s | Avg:  5m 04s | Max:  6m 02s
      🟩 Clang10            Pass: 100%/3   | Total: 18m 28s | Avg:  6m 09s | Max:  6m 27s
      🟩 Clang11            Pass: 100%/4   | Total: 20m 31s | Avg:  5m 07s | Max:  5m 19s
      🟩 Clang12            Pass: 100%/4   | Total: 21m 33s | Avg:  5m 23s | Max:  6m 17s
      🟩 Clang13            Pass: 100%/4   | Total: 21m 26s | Avg:  5m 21s | Max:  6m 00s
      🟩 Clang14            Pass: 100%/4   | Total: 20m 45s | Avg:  5m 11s | Max:  5m 33s
      🟩 Clang15            Pass: 100%/4   | Total: 21m 52s | Avg:  5m 28s | Max:  5m 56s
      🟩 Clang16            Pass: 100%/4   | Total: 20m 58s | Avg:  5m 14s | Max:  5m 48s
      🟩 Clang17            Pass: 100%/4   | Total: 21m 23s | Avg:  5m 20s | Max:  5m 38s
      🟩 Clang18            Pass: 100%/11  | Total:  1h 45m | Avg:  9m 35s | Max: 36m 38s
      🟩 GCC6               Pass: 100%/2   | Total:  9m 01s | Avg:  4m 30s | Max:  4m 48s
      🟩 GCC7               Pass: 100%/6   | Total: 29m 17s | Avg:  4m 52s | Max:  5m 27s
      🟩 GCC8               Pass: 100%/6   | Total:  1h 14m | Avg: 12m 22s | Max: 49m 30s
      🟩 GCC9               Pass: 100%/6   | Total: 29m 09s | Avg:  4m 51s | Max:  6m 02s
      🟩 GCC10              Pass: 100%/4   | Total: 22m 08s | Avg:  5m 32s | Max:  6m 10s
      🟩 GCC11              Pass: 100%/7   | Total: 38m 23s | Avg:  5m 29s | Max:  5m 51s
      🟩 GCC12              Pass: 100%/4   | Total: 22m 58s | Avg:  5m 44s | Max:  5m 55s
      🟩 GCC13              Pass: 100%/16  | Total:  3h 21m | Avg: 12m 37s | Max: 39m 01s
      🟩 Intel2023.2.0      Pass: 100%/3   | Total: 17m 45s | Avg:  5m 55s | Max:  6m 09s
      🟩 MSVC14.16          Pass: 100%/1   | Total: 15m 31s | Avg: 15m 31s | Max: 15m 31s | Hits:  99%/757   
      🟩 MSVC14.29          Pass: 100%/2   | Total: 23m 29s | Avg: 11m 44s | Max: 11m 46s | Hits:  99%/1514  
      🟩 MSVC14.39          Pass: 100%/1   | Total: 12m 43s | Avg: 12m 43s | Max: 12m 43s | Hits:  99%/757   
      🟩 NVHPC24.7          Pass: 100%/4   | Total: 35m 27s | Avg:  8m 51s | Max:  9m 12s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/48  | Total:  5h 02m | Avg:  6m 18s | Max: 36m 38s
      🟩 GCC                Pass: 100%/51  | Total:  7h 07m | Avg:  8m 22s | Max: 49m 30s
      🟩 Intel              Pass: 100%/3   | Total: 17m 45s | Avg:  5m 55s | Max:  6m 09s
      🟩 MSVC               Pass: 100%/4   | Total: 51m 43s | Avg: 12m 55s | Max: 15m 31s | Hits:  99%/3028  
      🟩 NVHPC              Pass: 100%/4   | Total: 35m 27s | Avg:  8m 51s | Max:  9m 12s
    🟩 gpu
      🟩 v100               Pass: 100%/110 | Total: 13h 54m | Avg:  7m 35s | Max: 49m 30s | Hits:  99%/3028  
    🟩 jobs
      🟩 Build              Pass: 100%/102 | Total: 10h 15m | Avg:  6m 01s | Max: 49m 30s | Hits:  99%/3028  
      🟩 DeviceLaunch       Pass: 100%/1   | Total: 21m 12s | Avg: 21m 12s | Max: 21m 12s
      🟩 GraphCapture       Pass: 100%/1   | Total: 18m 23s | Avg: 18m 23s | Max: 18m 23s
      🟩 HostLaunch         Pass: 100%/3   | Total:  1h 17m | Avg: 25m 56s | Max: 28m 19s
      🟩 TestGPU            Pass: 100%/3   | Total:  1h 42m | Avg: 34m 02s | Max: 39m 01s
    🟩 sm
      🟩 60;70;80;90        Pass: 100%/3   | Total: 16m 38s | Avg:  5m 32s | Max:  5m 51s
      🟩 90a                Pass: 100%/4   | Total: 16m 45s | Avg:  4m 11s | Max:  4m 25s
    🟩 std
      🟩 11                 Pass: 100%/30  | Total:  4h 12m | Avg:  8m 25s | Max: 49m 30s
      🟩 14                 Pass: 100%/29  | Total:  2h 47m | Avg:  5m 47s | Max: 15m 31s | Hits:  99%/1514  
      🟩 17                 Pass: 100%/27  | Total:  2h 34m | Avg:  5m 43s | Max: 11m 46s | Hits:  99%/757   
      🟩 20                 Pass: 100%/24  | Total:  4h 20m | Avg: 10m 50s | Max: 36m 38s | Hits:  99%/757   
    
  • 🟩 cudax: Pass: 100%/54 | Total: 4h 38m | Avg: 5m 09s | Max: 22m 37s | Hits: 88%/256

    🟩 cpu
      🟩 amd64              Pass: 100%/50  | Total:  4h 27m | Avg:  5m 21s | Max: 22m 37s | Hits:  88%/256   
      🟩 arm64              Pass: 100%/4   | Total: 11m 03s | Avg:  2m 45s | Max:  3m 02s
    🟩 ctk
      🟩 12.0               Pass: 100%/19  | Total:  1h 33m | Avg:  4m 54s | Max: 22m 37s | Hits:  88%/128   
      🟩 12.5               Pass: 100%/2   | Total: 11m 57s | Avg:  5m 58s | Max:  5m 59s
      🟩 12.6               Pass: 100%/33  | Total:  2h 53m | Avg:  5m 16s | Max: 21m 28s | Hits:  88%/128   
    🟩 cudacxx
      🟩 nvcc12.0           Pass: 100%/19  | Total:  1h 33m | Avg:  4m 54s | Max: 22m 37s | Hits:  88%/128   
      🟩 nvcc12.5           Pass: 100%/2   | Total: 11m 57s | Avg:  5m 58s | Max:  5m 59s
      🟩 nvcc12.6           Pass: 100%/33  | Total:  2h 53m | Avg:  5m 16s | Max: 21m 28s | Hits:  88%/128   
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/54  | Total:  4h 38m | Avg:  5m 09s | Max: 22m 37s | Hits:  88%/256   
    🟩 cxx
      🟩 Clang9             Pass: 100%/2   | Total:  7m 05s | Avg:  3m 32s | Max:  4m 10s
      🟩 Clang10            Pass: 100%/2   | Total:  6m 52s | Avg:  3m 26s | Max:  4m 11s
      🟩 Clang11            Pass: 100%/4   | Total: 12m 20s | Avg:  3m 05s | Max:  3m 35s
      🟩 Clang12            Pass: 100%/4   | Total: 12m 52s | Avg:  3m 13s | Max:  3m 50s
      🟩 Clang13            Pass: 100%/4   | Total: 12m 26s | Avg:  3m 06s | Max:  3m 32s
      🟩 Clang14            Pass: 100%/4   | Total: 33m 17s | Avg:  8m 19s | Max: 22m 37s
      🟩 Clang15            Pass: 100%/2   | Total:  8m 00s | Avg:  4m 00s | Max:  4m 03s
      🟩 Clang16            Pass: 100%/4   | Total: 13m 24s | Avg:  3m 21s | Max:  3m 54s
      🟩 Clang17            Pass: 100%/2   | Total:  7m 50s | Avg:  3m 55s | Max:  3m 56s
      🟩 Clang18            Pass: 100%/2   | Total: 22m 39s | Avg: 11m 19s | Max: 19m 02s
      🟩 GCC9               Pass: 100%/2   | Total:  6m 46s | Avg:  3m 23s | Max:  3m 40s
      🟩 GCC10              Pass: 100%/4   | Total: 12m 54s | Avg:  3m 13s | Max:  3m 57s
      🟩 GCC11              Pass: 100%/4   | Total: 13m 00s | Avg:  3m 15s | Max:  4m 09s
      🟩 GCC12              Pass: 100%/7   | Total:  1h 10m | Avg: 10m 07s | Max: 21m 28s
      🟩 GCC13              Pass: 100%/3   | Total:  8m 50s | Avg:  2m 56s | Max:  3m 31s
      🟩 MSVC14.36          Pass: 100%/1   | Total:  9m 01s | Avg:  9m 01s | Max:  9m 01s | Hits:  88%/128   
      🟩 MSVC14.39          Pass: 100%/1   | Total:  8m 52s | Avg:  8m 52s | Max:  8m 52s | Hits:  88%/128   
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 11m 57s | Avg:  5m 58s | Max:  5m 59s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/30  | Total:  2h 16m | Avg:  4m 33s | Max: 22m 37s
      🟩 GCC                Pass: 100%/20  | Total:  1h 52m | Avg:  5m 37s | Max: 21m 28s
      🟩 MSVC               Pass: 100%/2   | Total: 17m 53s | Avg:  8m 56s | Max:  9m 01s | Hits:  88%/256   
      🟩 NVHPC              Pass: 100%/2   | Total: 11m 57s | Avg:  5m 58s | Max:  5m 59s
    🟩 gpu
      🟩 v100               Pass: 100%/54  | Total:  4h 38m | Avg:  5m 09s | Max: 22m 37s | Hits:  88%/256   
    🟩 jobs
      🟩 Build              Pass: 100%/49  | Total:  3h 00m | Avg:  3m 40s | Max:  9m 01s | Hits:  88%/256   
      🟩 Test               Pass: 100%/5   | Total:  1h 38m | Avg: 19m 45s | Max: 22m 37s
    🟩 sm
      🟩 90                 Pass: 100%/1   | Total:  2m 36s | Avg:  2m 36s | Max:  2m 36s
      🟩 90a                Pass: 100%/1   | Total:  3m 31s | Avg:  3m 31s | Max:  3m 31s
    🟩 std
      🟩 17                 Pass: 100%/29  | Total:  2h 09m | Avg:  4m 28s | Max: 21m 28s
      🟩 20                 Pass: 100%/25  | Total:  2h 29m | Avg:  5m 58s | Max: 22m 37s | Hits:  88%/256   
    
  • 🟩 cccl_c_parallel: Pass: 100%/2 | Total: 9m 23s | Avg: 4m 41s | Max: 7m 27s

    🟩 cpu
      🟩 amd64              Pass: 100%/2   | Total:  9m 23s | Avg:  4m 41s | Max:  7m 27s
    🟩 ctk
      🟩 12.6               Pass: 100%/2   | Total:  9m 23s | Avg:  4m 41s | Max:  7m 27s
    🟩 cudacxx
      🟩 nvcc12.6           Pass: 100%/2   | Total:  9m 23s | Avg:  4m 41s | Max:  7m 27s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/2   | Total:  9m 23s | Avg:  4m 41s | Max:  7m 27s
    🟩 cxx
      🟩 GCC13              Pass: 100%/2   | Total:  9m 23s | Avg:  4m 41s | Max:  7m 27s
    🟩 cxx_family
      🟩 GCC                Pass: 100%/2   | Total:  9m 23s | Avg:  4m 41s | Max:  7m 27s
    🟩 gpu
      🟩 v100               Pass: 100%/2   | Total:  9m 23s | Avg:  4m 41s | Max:  7m 27s
    🟩 jobs
      🟩 Build              Pass: 100%/1   | Total:  1m 56s | Avg:  1m 56s | Max:  1m 56s
      🟩 Test               Pass: 100%/1   | Total:  7m 27s | Avg:  7m 27s | Max:  7m 27s
    
  • 🟩 python: Pass: 100%/1 | Total: 15m 51s | Avg: 15m 51s | Max: 15m 51s

    🟩 cpu
      🟩 amd64              Pass: 100%/1   | Total: 15m 51s | Avg: 15m 51s | Max: 15m 51s
    🟩 ctk
      🟩 12.6               Pass: 100%/1   | Total: 15m 51s | Avg: 15m 51s | Max: 15m 51s
    🟩 cudacxx
      🟩 nvcc12.6           Pass: 100%/1   | Total: 15m 51s | Avg: 15m 51s | Max: 15m 51s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/1   | Total: 15m 51s | Avg: 15m 51s | Max: 15m 51s
    🟩 cxx
      🟩 GCC13              Pass: 100%/1   | Total: 15m 51s | Avg: 15m 51s | Max: 15m 51s
    🟩 cxx_family
      🟩 GCC                Pass: 100%/1   | Total: 15m 51s | Avg: 15m 51s | Max: 15m 51s
    🟩 gpu
      🟩 v100               Pass: 100%/1   | Total: 15m 51s | Avg: 15m 51s | Max: 15m 51s
    🟩 jobs
      🟩 Test               Pass: 100%/1   | Total: 15m 51s | Avg: 15m 51s | Max: 15m 51s
    

👃 Inspect Changes

Modifications in project?

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

Modifications in project or dependencies?

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

🏃‍ Runner counts (total jobs: 396)

# Runner
327 linux-amd64-cpu16
28 linux-arm64-cpu16
26 linux-amd64-gpu-v100-latest-1
15 windows-amd64-cpu16

@fbusato fbusato requested a review from miscco January 13, 2025 19:06
Copy link
Contributor

🟩 CI finished in 2h 09m: Pass: 100%/144 | Total: 1d 00h | Avg: 10m 02s | Max: 37m 37s | Hits: 554%/25191
  • 🟩 libcudacxx: Pass: 100%/46 | Total: 8h 04m | Avg: 10m 32s | Max: 31m 59s | Hits: 682%/12511

    🟩 cpu
      🟩 amd64              Pass: 100%/44  | Total:  7h 57m | Avg: 10m 51s | Max: 31m 59s | Hits: 682%/12511 
      🟩 arm64              Pass: 100%/2   | Total:  7m 16s | Avg:  3m 38s | Max:  3m 49s
    🟩 ctk
      🟩 12.0               Pass: 100%/8   | Total:  1h 03m | Avg:  7m 57s | Max: 21m 50s | Hits: 682%/4883  
      🟩 12.5               Pass: 100%/2   | Total: 17m 45s | Avg:  8m 52s | Max:  9m 04s
      🟩 12.6               Pass: 100%/36  | Total:  6h 43m | Avg: 11m 12s | Max: 31m 59s | Hits: 682%/7628  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/4   | Total:  1h 06m | Avg: 16m 41s | Max: 20m 10s
      🟩 nvcc12.0           Pass: 100%/8   | Total:  1h 03m | Avg:  7m 57s | Max: 21m 50s | Hits: 682%/4883  
      🟩 nvcc12.5           Pass: 100%/2   | Total: 17m 45s | Avg:  8m 52s | Max:  9m 04s
      🟩 nvcc12.6           Pass: 100%/32  | Total:  5h 36m | Avg: 10m 31s | Max: 31m 59s | Hits: 682%/7628  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/4   | Total:  1h 06m | Avg: 16m 41s | Max: 20m 10s
      🟩 nvcc               Pass: 100%/42  | Total:  6h 57m | Avg:  9m 57s | Max: 31m 59s | Hits: 682%/12511 
    🟩 cxx
      🟩 Clang14            Pass: 100%/6   | Total: 23m 50s | Avg:  3m 58s | Max:  4m 39s
      🟩 Clang15            Pass: 100%/1   | Total:  4m 40s | Avg:  4m 40s | Max:  4m 40s
      🟩 Clang16            Pass: 100%/1   | Total:  4m 35s | Avg:  4m 35s | Max:  4m 35s
      🟩 Clang17            Pass: 100%/1   | Total:  4m 15s | Avg:  4m 15s | Max:  4m 15s
      🟩 Clang18            Pass: 100%/8   | Total:  1h 51m | Avg: 13m 56s | Max: 31m 59s
      🟩 GCC7               Pass: 100%/5   | Total: 17m 18s | Avg:  3m 27s | Max:  4m 05s
      🟩 GCC8               Pass: 100%/1   | Total:  3m 27s | Avg:  3m 27s | Max:  3m 27s
      🟩 GCC9               Pass: 100%/3   | Total: 10m 04s | Avg:  3m 21s | Max:  3m 45s
      🟩 GCC10              Pass: 100%/1   | Total:  3m 36s | Avg:  3m 36s | Max:  3m 36s
      🟩 GCC11              Pass: 100%/1   | Total:  3m 51s | Avg:  3m 51s | Max:  3m 51s
      🟩 GCC12              Pass: 100%/1   | Total:  3m 57s | Avg:  3m 57s | Max:  3m 57s
      🟩 GCC13              Pass: 100%/10  | Total:  2h 32m | Avg: 15m 14s | Max: 31m 45s
      🟩 MSVC14.29          Pass: 100%/3   | Total:  1h 08m | Avg: 22m 54s | Max: 25m 37s | Hits: 682%/7375  
      🟩 MSVC14.39          Pass: 100%/2   | Total: 54m 45s | Avg: 27m 22s | Max: 30m 34s | Hits: 681%/5136  
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 17m 45s | Avg:  8m 52s | Max:  9m 04s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/17  | Total:  2h 28m | Avg:  8m 45s | Max: 31m 59s
      🟩 GCC                Pass: 100%/22  | Total:  3h 14m | Avg:  8m 50s | Max: 31m 45s
      🟩 MSVC               Pass: 100%/5   | Total:  2h 03m | Avg: 24m 41s | Max: 30m 34s | Hits: 682%/12511 
      🟩 NVHPC              Pass: 100%/2   | Total: 17m 45s | Avg:  8m 52s | Max:  9m 04s
    🟩 gpu
      🟩 v100               Pass: 100%/46  | Total:  8h 04m | Avg: 10m 32s | Max: 31m 59s | Hits: 682%/12511 
    🟩 jobs
      🟩 Build              Pass: 100%/39  | Total:  5h 15m | Avg:  8m 05s | Max: 30m 34s | Hits: 682%/12511 
      🟩 NVRTC              Pass: 100%/4   | Total:  1h 43m | Avg: 25m 48s | Max: 30m 16s
      🟩 Test               Pass: 100%/2   | Total:  1h 03m | Avg: 31m 52s | Max: 31m 59s
      🟩 VerifyCodegen      Pass: 100%/1   | Total:  1m 57s | Avg:  1m 57s | Max:  1m 57s
    🟩 sm
      🟩 90                 Pass: 100%/1   | Total: 13m 59s | Avg: 13m 59s | Max: 13m 59s
      🟩 90a                Pass: 100%/2   | Total: 16m 57s | Avg:  8m 28s | Max: 13m 00s
    🟩 std
      🟩 11                 Pass: 100%/6   | Total: 37m 56s | Avg:  6m 19s | Max: 22m 07s
      🟩 14                 Pass: 100%/4   | Total: 59m 02s | Avg: 14m 45s | Max: 30m 16s | Hits: 682%/2401  
      🟩 17                 Pass: 100%/14  | Total:  2h 34m | Avg: 11m 00s | Max: 25m 37s | Hits: 683%/7466  
      🟩 20                 Pass: 100%/21  | Total:  3h 51m | Avg: 11m 01s | Max: 31m 59s | Hits: 680%/2644  
    
  • 🟩 cub: Pass: 100%/38 | Total: 7h 22m | Avg: 11m 38s | Max: 36m 46s | Hits: 599%/3108

    🟩 cpu
      🟩 amd64              Pass: 100%/36  | Total:  7h 12m | Avg: 12m 00s | Max: 36m 46s | Hits: 599%/3108  
      🟩 arm64              Pass: 100%/2   | Total:  9m 34s | Avg:  4m 47s | Max:  4m 58s
    🟩 ctk
      🟩 12.0               Pass: 100%/5   | Total: 46m 17s | Avg:  9m 15s | Max: 25m 14s | Hits: 599%/777   
      🟩 12.5               Pass: 100%/2   | Total: 20m 13s | Avg: 10m 06s | Max: 10m 13s
      🟩 12.6               Pass: 100%/31  | Total:  6h 15m | Avg: 12m 07s | Max: 36m 46s | Hits: 599%/2331  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/2   | Total:  9m 02s | Avg:  4m 31s | Max:  4m 34s
      🟩 nvcc12.0           Pass: 100%/5   | Total: 46m 17s | Avg:  9m 15s | Max: 25m 14s | Hits: 599%/777   
      🟩 nvcc12.5           Pass: 100%/2   | Total: 20m 13s | Avg: 10m 06s | Max: 10m 13s
      🟩 nvcc12.6           Pass: 100%/29  | Total:  6h 06m | Avg: 12m 38s | Max: 36m 46s | Hits: 599%/2331  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/2   | Total:  9m 02s | Avg:  4m 31s | Max:  4m 34s
      🟩 nvcc               Pass: 100%/36  | Total:  7h 13m | Avg: 12m 01s | Max: 36m 46s | Hits: 599%/3108  
    🟩 cxx
      🟩 Clang14            Pass: 100%/4   | Total: 20m 54s | Avg:  5m 13s | Max:  5m 33s
      🟩 Clang15            Pass: 100%/1   | Total:  5m 27s | Avg:  5m 27s | Max:  5m 27s
      🟩 Clang16            Pass: 100%/1   | Total:  5m 22s | Avg:  5m 22s | Max:  5m 22s
      🟩 Clang17            Pass: 100%/1   | Total:  5m 39s | Avg:  5m 39s | Max:  5m 39s
      🟩 Clang18            Pass: 100%/7   | Total:  1h 27m | Avg: 12m 30s | Max: 35m 18s
      🟩 GCC7               Pass: 100%/2   | Total: 10m 50s | Avg:  5m 25s | Max:  5m 30s
      🟩 GCC8               Pass: 100%/1   | Total:  5m 15s | Avg:  5m 15s | Max:  5m 15s
      🟩 GCC9               Pass: 100%/2   | Total: 11m 29s | Avg:  5m 44s | Max:  5m 56s
      🟩 GCC10              Pass: 100%/1   | Total:  5m 52s | Avg:  5m 52s | Max:  5m 52s
      🟩 GCC11              Pass: 100%/1   | Total:  5m 51s | Avg:  5m 51s | Max:  5m 51s
      🟩 GCC12              Pass: 100%/3   | Total: 26m 15s | Avg:  8m 45s | Max: 15m 56s
      🟩 GCC13              Pass: 100%/8   | Total:  1h 59m | Avg: 14m 58s | Max: 36m 46s
      🟩 MSVC14.29          Pass: 100%/2   | Total: 54m 33s | Avg: 27m 16s | Max: 29m 19s | Hits: 599%/1554  
      🟩 MSVC14.39          Pass: 100%/2   | Total: 57m 08s | Avg: 28m 34s | Max: 29m 59s | Hits: 599%/1554  
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 20m 13s | Avg: 10m 06s | Max: 10m 13s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/14  | Total:  2h 04m | Avg:  8m 55s | Max: 35m 18s
      🟩 GCC                Pass: 100%/18  | Total:  3h 05m | Avg: 10m 17s | Max: 36m 46s
      🟩 MSVC               Pass: 100%/4   | Total:  1h 51m | Avg: 27m 55s | Max: 29m 59s | Hits: 599%/3108  
      🟩 NVHPC              Pass: 100%/2   | Total: 20m 13s | Avg: 10m 06s | Max: 10m 13s
    🟩 gpu
      🟩 h100               Pass: 100%/2   | Total: 20m 15s | Avg: 10m 07s | Max: 15m 56s
      🟩 v100               Pass: 100%/36  | Total:  7h 01m | Avg: 11m 43s | Max: 36m 46s | Hits: 599%/3108  
    🟩 jobs
      🟩 Build              Pass: 100%/31  | Total:  4h 24m | Avg:  8m 32s | Max: 29m 59s | Hits: 599%/3108  
      🟩 DeviceLaunch       Pass: 100%/1   | Total: 36m 46s | Avg: 36m 46s | Max: 36m 46s
      🟩 GraphCapture       Pass: 100%/1   | Total: 19m 12s | Avg: 19m 12s | Max: 19m 12s
      🟩 HostLaunch         Pass: 100%/3   | Total:  1h 01m | Avg: 20m 23s | Max: 27m 09s
      🟩 TestGPU            Pass: 100%/2   | Total:  1h 00m | Avg: 30m 01s | Max: 35m 18s
    🟩 sm
      🟩 90                 Pass: 100%/2   | Total: 20m 15s | Avg: 10m 07s | Max: 15m 56s
      🟩 90a                Pass: 100%/1   | Total:  4m 13s | Avg:  4m 13s | Max:  4m 13s
    🟩 std
      🟩 17                 Pass: 100%/14  | Total:  2h 25m | Avg: 10m 25s | Max: 29m 19s | Hits: 599%/2331  
      🟩 20                 Pass: 100%/24  | Total:  4h 56m | Avg: 12m 20s | Max: 36m 46s | Hits: 599%/777   
    
  • 🟩 thrust: Pass: 100%/37 | Total: 6h 12m | Avg: 10m 04s | Max: 37m 37s | Hits: 365%/9260

    🟩 cmake_options
      🟩 -DTHRUST_DISPATCH_TYPE=Force32bit Pass: 100%/2   | Total: 17m 49s | Avg:  8m 54s | Max: 11m 54s
    🟩 cpu
      🟩 amd64              Pass: 100%/35  | Total:  6h 03m | Avg: 10m 22s | Max: 37m 37s | Hits: 365%/9260  
      🟩 arm64              Pass: 100%/2   | Total:  9m 36s | Avg:  4m 48s | Max:  5m 01s
    🟩 ctk
      🟩 12.0               Pass: 100%/5   | Total: 48m 18s | Avg:  9m 39s | Max: 27m 53s | Hits: 365%/1852  
      🟩 12.5               Pass: 100%/2   | Total: 29m 52s | Avg: 14m 56s | Max: 15m 51s
      🟩 12.6               Pass: 100%/30  | Total:  4h 54m | Avg:  9m 48s | Max: 37m 37s | Hits: 365%/7408  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/2   | Total: 10m 19s | Avg:  5m 09s | Max:  5m 20s
      🟩 nvcc12.0           Pass: 100%/5   | Total: 48m 18s | Avg:  9m 39s | Max: 27m 53s | Hits: 365%/1852  
      🟩 nvcc12.5           Pass: 100%/2   | Total: 29m 52s | Avg: 14m 56s | Max: 15m 51s
      🟩 nvcc12.6           Pass: 100%/28  | Total:  4h 44m | Avg: 10m 08s | Max: 37m 37s | Hits: 365%/7408  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/2   | Total: 10m 19s | Avg:  5m 09s | Max:  5m 20s
      🟩 nvcc               Pass: 100%/35  | Total:  6h 02m | Avg: 10m 21s | Max: 37m 37s | Hits: 365%/9260  
    🟩 cxx
      🟩 Clang14            Pass: 100%/4   | Total: 20m 34s | Avg:  5m 08s | Max:  5m 30s
      🟩 Clang15            Pass: 100%/1   | Total:  5m 25s | Avg:  5m 25s | Max:  5m 25s
      🟩 Clang16            Pass: 100%/1   | Total:  5m 23s | Avg:  5m 23s | Max:  5m 23s
      🟩 Clang17            Pass: 100%/1   | Total:  5m 25s | Avg:  5m 25s | Max:  5m 25s
      🟩 Clang18            Pass: 100%/7   | Total: 47m 10s | Avg:  6m 44s | Max: 13m 54s
      🟩 GCC7               Pass: 100%/2   | Total: 11m 03s | Avg:  5m 31s | Max:  5m 40s
      🟩 GCC8               Pass: 100%/1   | Total:  5m 21s | Avg:  5m 21s | Max:  5m 21s
      🟩 GCC9               Pass: 100%/2   | Total: 11m 26s | Avg:  5m 43s | Max:  5m 59s
      🟩 GCC10              Pass: 100%/1   | Total:  5m 22s | Avg:  5m 22s | Max:  5m 22s
      🟩 GCC11              Pass: 100%/1   | Total:  5m 19s | Avg:  5m 19s | Max:  5m 19s
      🟩 GCC12              Pass: 100%/1   | Total:  6m 18s | Avg:  6m 18s | Max:  6m 18s
      🟩 GCC13              Pass: 100%/8   | Total:  1h 01m | Avg:  7m 40s | Max: 13m 52s
      🟩 MSVC14.29          Pass: 100%/2   | Total: 53m 52s | Avg: 26m 56s | Max: 27m 53s | Hits: 365%/3704  
      🟩 MSVC14.39          Pass: 100%/3   | Total:  1h 38m | Avg: 32m 55s | Max: 37m 37s | Hits: 365%/5556  
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 29m 52s | Avg: 14m 56s | Max: 15m 51s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/14  | Total:  1h 23m | Avg:  5m 59s | Max: 13m 54s
      🟩 GCC                Pass: 100%/16  | Total:  1h 46m | Avg:  6m 38s | Max: 13m 52s
      🟩 MSVC               Pass: 100%/5   | Total:  2h 32m | Avg: 30m 31s | Max: 37m 37s | Hits: 365%/9260  
      🟩 NVHPC              Pass: 100%/2   | Total: 29m 52s | Avg: 14m 56s | Max: 15m 51s
    🟩 gpu
      🟩 v100               Pass: 100%/37  | Total:  6h 12m | Avg: 10m 04s | Max: 37m 37s | Hits: 365%/9260  
    🟩 jobs
      🟩 Build              Pass: 100%/31  | Total:  4h 39m | Avg:  9m 01s | Max: 30m 35s | Hits: 365%/7408  
      🟩 TestCPU            Pass: 100%/3   | Total: 53m 15s | Avg: 17m 45s | Max: 37m 37s | Hits: 365%/1852  
      🟩 TestGPU            Pass: 100%/3   | Total: 39m 40s | Avg: 13m 13s | Max: 13m 54s
    🟩 sm
      🟩 90a                Pass: 100%/1   | Total:  4m 31s | Avg:  4m 31s | Max:  4m 31s
    🟩 std
      🟩 17                 Pass: 100%/14  | Total:  2h 32m | Avg: 10m 55s | Max: 30m 35s | Hits: 365%/5556  
      🟩 20                 Pass: 100%/21  | Total:  3h 21m | Avg:  9m 36s | Max: 37m 37s | Hits: 365%/3704  
    
  • 🟩 cudax: Pass: 100%/20 | Total: 1h 48m | Avg: 5m 25s | Max: 17m 56s | Hits: 582%/312

    🟩 cpu
      🟩 amd64              Pass: 100%/16  | Total:  1h 37m | Avg:  6m 07s | Max: 17m 56s | Hits: 582%/312   
      🟩 arm64              Pass: 100%/4   | Total: 10m 30s | Avg:  2m 37s | Max:  2m 45s
    🟩 ctk
      🟩 12.0               Pass: 100%/1   | Total: 10m 50s | Avg: 10m 50s | Max: 10m 50s | Hits: 582%/156   
      🟩 12.5               Pass: 100%/2   | Total: 11m 12s | Avg:  5m 36s | Max:  5m 57s
      🟩 12.6               Pass: 100%/17  | Total:  1h 26m | Avg:  5m 04s | Max: 17m 56s | Hits: 582%/156   
    🟩 cudacxx
      🟩 nvcc12.0           Pass: 100%/1   | Total: 10m 50s | Avg: 10m 50s | Max: 10m 50s | Hits: 582%/156   
      🟩 nvcc12.5           Pass: 100%/2   | Total: 11m 12s | Avg:  5m 36s | Max:  5m 57s
      🟩 nvcc12.6           Pass: 100%/17  | Total:  1h 26m | Avg:  5m 04s | Max: 17m 56s | Hits: 582%/156   
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/20  | Total:  1h 48m | Avg:  5m 25s | Max: 17m 56s | Hits: 582%/312   
    🟩 cxx
      🟩 Clang14            Pass: 100%/1   | Total:  3m 07s | Avg:  3m 07s | Max:  3m 07s
      🟩 Clang15            Pass: 100%/1   | Total:  3m 15s | Avg:  3m 15s | Max:  3m 15s
      🟩 Clang16            Pass: 100%/1   | Total:  3m 20s | Avg:  3m 20s | Max:  3m 20s
      🟩 Clang17            Pass: 100%/1   | Total:  3m 24s | Avg:  3m 24s | Max:  3m 24s
      🟩 Clang18            Pass: 100%/4   | Total: 26m 38s | Avg:  6m 39s | Max: 17m 56s
      🟩 GCC10              Pass: 100%/1   | Total:  3m 12s | Avg:  3m 12s | Max:  3m 12s
      🟩 GCC11              Pass: 100%/1   | Total:  3m 05s | Avg:  3m 05s | Max:  3m 05s
      🟩 GCC12              Pass: 100%/2   | Total: 18m 20s | Avg:  9m 10s | Max: 15m 06s
      🟩 GCC13              Pass: 100%/4   | Total: 10m 56s | Avg:  2m 44s | Max:  3m 01s
      🟩 MSVC14.36          Pass: 100%/1   | Total: 10m 50s | Avg: 10m 50s | Max: 10m 50s | Hits: 582%/156   
      🟩 MSVC14.39          Pass: 100%/1   | Total: 11m 03s | Avg: 11m 03s | Max: 11m 03s | Hits: 582%/156   
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 11m 12s | Avg:  5m 36s | Max:  5m 57s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/8   | Total: 39m 44s | Avg:  4m 58s | Max: 17m 56s
      🟩 GCC                Pass: 100%/8   | Total: 35m 33s | Avg:  4m 26s | Max: 15m 06s
      🟩 MSVC               Pass: 100%/2   | Total: 21m 53s | Avg: 10m 56s | Max: 11m 03s | Hits: 582%/312   
      🟩 NVHPC              Pass: 100%/2   | Total: 11m 12s | Avg:  5m 36s | Max:  5m 57s
    🟩 gpu
      🟩 v100               Pass: 100%/20  | Total:  1h 48m | Avg:  5m 25s | Max: 17m 56s | Hits: 582%/312   
    🟩 jobs
      🟩 Build              Pass: 100%/18  | Total:  1h 15m | Avg:  4m 11s | Max: 11m 03s | Hits: 582%/312   
      🟩 Test               Pass: 100%/2   | Total: 33m 02s | Avg: 16m 31s | Max: 17m 56s
    🟩 sm
      🟩 90                 Pass: 100%/1   | Total:  3m 01s | Avg:  3m 01s | Max:  3m 01s
      🟩 90a                Pass: 100%/1   | Total:  2m 50s | Avg:  2m 50s | Max:  2m 50s
    🟩 std
      🟩 17                 Pass: 100%/4   | Total: 13m 27s | Avg:  3m 21s | Max:  5m 15s
      🟩 20                 Pass: 100%/16  | Total:  1h 34m | Avg:  5m 55s | Max: 17m 56s | Hits: 582%/312   
    
  • 🟩 cccl_c_parallel: Pass: 100%/2 | Total: 10m 56s | Avg: 5m 28s | Max: 8m 44s

    🟩 cpu
      🟩 amd64              Pass: 100%/2   | Total: 10m 56s | Avg:  5m 28s | Max:  8m 44s
    🟩 ctk
      🟩 12.6               Pass: 100%/2   | Total: 10m 56s | Avg:  5m 28s | Max:  8m 44s
    🟩 cudacxx
      🟩 nvcc12.6           Pass: 100%/2   | Total: 10m 56s | Avg:  5m 28s | Max:  8m 44s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/2   | Total: 10m 56s | Avg:  5m 28s | Max:  8m 44s
    🟩 cxx
      🟩 GCC13              Pass: 100%/2   | Total: 10m 56s | Avg:  5m 28s | Max:  8m 44s
    🟩 cxx_family
      🟩 GCC                Pass: 100%/2   | Total: 10m 56s | Avg:  5m 28s | Max:  8m 44s
    🟩 gpu
      🟩 v100               Pass: 100%/2   | Total: 10m 56s | Avg:  5m 28s | Max:  8m 44s
    🟩 jobs
      🟩 Build              Pass: 100%/1   | Total:  2m 12s | Avg:  2m 12s | Max:  2m 12s
      🟩 Test               Pass: 100%/1   | Total:  8m 44s | Avg:  8m 44s | Max:  8m 44s
    
  • 🟩 python: Pass: 100%/1 | Total: 28m 09s | Avg: 28m 09s | Max: 28m 09s

    🟩 cpu
      🟩 amd64              Pass: 100%/1   | Total: 28m 09s | Avg: 28m 09s | Max: 28m 09s
    🟩 ctk
      🟩 12.6               Pass: 100%/1   | Total: 28m 09s | Avg: 28m 09s | Max: 28m 09s
    🟩 cudacxx
      🟩 nvcc12.6           Pass: 100%/1   | Total: 28m 09s | Avg: 28m 09s | Max: 28m 09s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/1   | Total: 28m 09s | Avg: 28m 09s | Max: 28m 09s
    🟩 cxx
      🟩 GCC13              Pass: 100%/1   | Total: 28m 09s | Avg: 28m 09s | Max: 28m 09s
    🟩 cxx_family
      🟩 GCC                Pass: 100%/1   | Total: 28m 09s | Avg: 28m 09s | Max: 28m 09s
    🟩 gpu
      🟩 v100               Pass: 100%/1   | Total: 28m 09s | Avg: 28m 09s | Max: 28m 09s
    🟩 jobs
      🟩 Test               Pass: 100%/1   | Total: 28m 09s | Avg: 28m 09s | Max: 28m 09s
    

👃 Inspect Changes

Modifications in project?

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

Modifications in project or dependencies?

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

🏃‍ Runner counts (total jobs: 144)

# Runner
98 linux-amd64-cpu16
19 linux-amd64-gpu-v100-latest-1
16 windows-amd64-cpu16
10 linux-arm64-cpu16
1 linux-amd64-gpu-h100-latest-1-testing

Copy link
Collaborator

@miscco miscco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor nits regarding typos and missing NVIDIA copyright on the product headers but besides that its good to go

libcudacxx/include/cuda/std/__linalg/conjugated.h Outdated Show resolved Hide resolved
libcudacxx/include/cuda/std/__linalg/transposed.h Outdated Show resolved Hide resolved
fbusato and others added 4 commits January 15, 2025 09:11
Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>
Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>
Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>
Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>
@fbusato fbusato requested a review from a team as a code owner January 15, 2025 18:56
@fbusato fbusato requested a review from gonidelis January 15, 2025 19:06
Copy link
Contributor

🟨 CI finished in 1h 50m: Pass: 97%/144 | Total: 23h 34m | Avg: 9m 49s | Max: 35m 40s | Hits: 539%/22547
  • 🟨 libcudacxx: Pass: 93%/46 | Total: 7h 37m | Avg: 9m 56s | Max: 30m 16s | Hits: 682%/9867

    🔍 cpu: amd64 🔍
      🔍 amd64              Pass:  93%/44  | Total:  7h 30m | Avg: 10m 14s | Max: 30m 16s | Hits: 682%/9867  
      🟩 arm64              Pass: 100%/2   | Total:  7m 05s | Avg:  3m 32s | Max:  3m 42s
    🔍 ctk: 12.6 🔍
      🟩 12.0               Pass: 100%/8   | Total:  1h 05m | Avg:  8m 11s | Max: 23m 57s | Hits: 681%/4883  
      🟩 12.5               Pass: 100%/2   | Total: 17m 38s | Avg:  8m 49s | Max:  9m 05s
      🔍 12.6               Pass:  91%/36  | Total:  6h 14m | Avg: 10m 23s | Max: 30m 16s | Hits: 682%/4984  
    🔍 cudacxx: nvcc12.6 🔍
      🟩 ClangCUDA18        Pass: 100%/4   | Total:  1h 07m | Avg: 16m 47s | Max: 21m 38s
      🟩 nvcc12.0           Pass: 100%/8   | Total:  1h 05m | Avg:  8m 11s | Max: 23m 57s | Hits: 681%/4883  
      🟩 nvcc12.5           Pass: 100%/2   | Total: 17m 38s | Avg:  8m 49s | Max:  9m 05s
      🔍 nvcc12.6           Pass:  90%/32  | Total:  5h 07m | Avg:  9m 35s | Max: 30m 16s | Hits: 682%/4984  
    🔍 cudacxx_family: nvcc 🔍
      🟩 ClangCUDA          Pass: 100%/4   | Total:  1h 07m | Avg: 16m 47s | Max: 21m 38s
      🔍 nvcc               Pass:  92%/42  | Total:  6h 30m | Avg:  9m 17s | Max: 30m 16s | Hits: 682%/9867  
    🟨 cxx
      🟩 Clang14            Pass: 100%/6   | Total: 23m 18s | Avg:  3m 53s | Max:  4m 41s
      🟩 Clang15            Pass: 100%/1   | Total:  4m 28s | Avg:  4m 28s | Max:  4m 28s
      🟩 Clang16            Pass: 100%/1   | Total:  4m 20s | Avg:  4m 20s | Max:  4m 20s
      🟩 Clang17            Pass: 100%/1   | Total:  4m 30s | Avg:  4m 30s | Max:  4m 30s
      🟩 Clang18            Pass: 100%/8   | Total:  1h 37m | Avg: 12m 08s | Max: 21m 38s
      🟩 GCC7               Pass: 100%/5   | Total: 16m 22s | Avg:  3m 16s | Max:  3m 29s
      🟩 GCC8               Pass: 100%/1   | Total:  3m 45s | Avg:  3m 45s | Max:  3m 45s
      🟩 GCC9               Pass: 100%/3   | Total: 10m 34s | Avg:  3m 31s | Max:  4m 05s
      🟩 GCC10              Pass: 100%/1   | Total:  3m 58s | Avg:  3m 58s | Max:  3m 58s
      🟩 GCC11              Pass: 100%/1   | Total:  3m 47s | Avg:  3m 47s | Max:  3m 47s
      🟩 GCC12              Pass: 100%/1   | Total:  4m 15s | Avg:  4m 15s | Max:  4m 15s
      🟨 GCC13              Pass:  80%/10  | Total:  2h 16m | Avg: 13m 36s | Max: 30m 16s
      🟩 MSVC14.29          Pass: 100%/3   | Total:  1h 09m | Avg: 23m 18s | Max: 23m 57s | Hits: 682%/7375  
      🟨 MSVC14.39          Pass:  50%/2   | Total: 57m 20s | Avg: 28m 40s | Max: 28m 57s | Hits: 682%/2492  
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 17m 38s | Avg:  8m 49s | Max:  9m 05s
    🟨 cxx_family
      🟩 Clang              Pass: 100%/17  | Total:  2h 13m | Avg:  7m 52s | Max: 21m 38s
      🟨 GCC                Pass:  90%/22  | Total:  2h 58m | Avg:  8m 07s | Max: 30m 16s
      🟨 MSVC               Pass:  80%/5   | Total:  2h 07m | Avg: 25m 26s | Max: 28m 57s | Hits: 682%/9867  
      🟩 NVHPC              Pass: 100%/2   | Total: 17m 38s | Avg:  8m 49s | Max:  9m 05s
    🟨 jobs
      🟨 Build              Pass:  97%/39  | Total:  5h 18m | Avg:  8m 10s | Max: 28m 57s | Hits: 682%/9867  
      🟨 NVRTC              Pass:  50%/4   | Total:  1h 33m | Avg: 23m 29s | Max: 30m 16s
      🟩 Test               Pass: 100%/2   | Total: 42m 50s | Avg: 21m 25s | Max: 25m 10s
      🟩 VerifyCodegen      Pass: 100%/1   | Total:  1m 59s | Avg:  1m 59s | Max:  1m 59s
    🟨 std
      🟩 11                 Pass: 100%/6   | Total: 35m 53s | Avg:  5m 58s | Max: 20m 13s
      🟩 14                 Pass: 100%/4   | Total: 50m 30s | Avg: 12m 37s | Max: 22m 13s | Hits: 681%/2401  
      🟨 17                 Pass:  92%/14  | Total:  2h 45m | Avg: 11m 51s | Max: 30m 16s | Hits: 682%/7466  
      🟨 20                 Pass:  90%/21  | Total:  3h 23m | Avg:  9m 40s | Max: 28m 23s
    🟨 gpu
      🟨 v100               Pass:  93%/46  | Total:  7h 37m | Avg:  9m 56s | Max: 30m 16s | Hits: 682%/9867  
    🟩 sm
      🟩 90                 Pass: 100%/1   | Total: 13m 05s | Avg: 13m 05s | Max: 13m 05s
      🟩 90a                Pass: 100%/2   | Total: 17m 01s | Avg:  8m 30s | Max: 13m 03s
    
  • 🟩 cub: Pass: 100%/38 | Total: 6h 55m | Avg: 10m 56s | Max: 32m 38s | Hits: 599%/3108

    🟩 cpu
      🟩 amd64              Pass: 100%/36  | Total:  6h 46m | Avg: 11m 17s | Max: 32m 38s | Hits: 599%/3108  
      🟩 arm64              Pass: 100%/2   | Total:  9m 34s | Avg:  4m 47s | Max:  4m 52s
    🟩 ctk
      🟩 12.0               Pass: 100%/5   | Total: 51m 00s | Avg: 10m 12s | Max: 30m 20s | Hits: 599%/777   
      🟩 12.5               Pass: 100%/2   | Total: 19m 08s | Avg:  9m 34s | Max:  9m 45s
      🟩 12.6               Pass: 100%/31  | Total:  5h 45m | Avg: 11m 09s | Max: 32m 38s | Hits: 599%/2331  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/2   | Total:  8m 43s | Avg:  4m 21s | Max:  4m 27s
      🟩 nvcc12.0           Pass: 100%/5   | Total: 51m 00s | Avg: 10m 12s | Max: 30m 20s | Hits: 599%/777   
      🟩 nvcc12.5           Pass: 100%/2   | Total: 19m 08s | Avg:  9m 34s | Max:  9m 45s
      🟩 nvcc12.6           Pass: 100%/29  | Total:  5h 36m | Avg: 11m 37s | Max: 32m 38s | Hits: 599%/2331  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/2   | Total:  8m 43s | Avg:  4m 21s | Max:  4m 27s
      🟩 nvcc               Pass: 100%/36  | Total:  6h 47m | Avg: 11m 18s | Max: 32m 38s | Hits: 599%/3108  
    🟩 cxx
      🟩 Clang14            Pass: 100%/4   | Total: 21m 19s | Avg:  5m 19s | Max:  5m 42s
      🟩 Clang15            Pass: 100%/1   | Total:  5m 16s | Avg:  5m 16s | Max:  5m 16s
      🟩 Clang16            Pass: 100%/1   | Total:  5m 55s | Avg:  5m 55s | Max:  5m 55s
      🟩 Clang17            Pass: 100%/1   | Total:  5m 44s | Avg:  5m 44s | Max:  5m 44s
      🟩 Clang18            Pass: 100%/7   | Total:  1h 09m | Avg:  9m 55s | Max: 23m 45s
      🟩 GCC7               Pass: 100%/2   | Total: 10m 14s | Avg:  5m 07s | Max:  5m 16s
      🟩 GCC8               Pass: 100%/1   | Total:  5m 24s | Avg:  5m 24s | Max:  5m 24s
      🟩 GCC9               Pass: 100%/2   | Total: 11m 12s | Avg:  5m 36s | Max:  5m 37s
      🟩 GCC10              Pass: 100%/1   | Total:  5m 26s | Avg:  5m 26s | Max:  5m 26s
      🟩 GCC11              Pass: 100%/1   | Total:  5m 55s | Avg:  5m 55s | Max:  5m 55s
      🟩 GCC12              Pass: 100%/3   | Total: 26m 27s | Avg:  8m 49s | Max: 16m 17s
      🟩 GCC13              Pass: 100%/8   | Total:  1h 45m | Avg: 13m 09s | Max: 22m 58s
      🟩 MSVC14.29          Pass: 100%/2   | Total: 57m 29s | Avg: 28m 44s | Max: 30m 20s | Hits: 599%/1554  
      🟩 MSVC14.39          Pass: 100%/2   | Total:  1h 01m | Avg: 30m 50s | Max: 32m 38s | Hits: 599%/1554  
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 19m 08s | Avg:  9m 34s | Max:  9m 45s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/14  | Total:  1h 47m | Avg:  7m 41s | Max: 23m 45s
      🟩 GCC                Pass: 100%/18  | Total:  2h 49m | Avg:  9m 26s | Max: 22m 58s
      🟩 MSVC               Pass: 100%/4   | Total:  1h 59m | Avg: 29m 47s | Max: 32m 38s | Hits: 599%/3108  
      🟩 NVHPC              Pass: 100%/2   | Total: 19m 08s | Avg:  9m 34s | Max:  9m 45s
    🟩 gpu
      🟩 h100               Pass: 100%/2   | Total: 20m 37s | Avg: 10m 18s | Max: 16m 17s
      🟩 v100               Pass: 100%/36  | Total:  6h 35m | Avg: 10m 58s | Max: 32m 38s | Hits: 599%/3108  
    🟩 jobs
      🟩 Build              Pass: 100%/31  | Total:  4h 30m | Avg:  8m 43s | Max: 32m 38s | Hits: 599%/3108  
      🟩 DeviceLaunch       Pass: 100%/1   | Total: 21m 29s | Avg: 21m 29s | Max: 21m 29s
      🟩 GraphCapture       Pass: 100%/1   | Total: 18m 30s | Avg: 18m 30s | Max: 18m 30s
      🟩 HostLaunch         Pass: 100%/3   | Total:  1h 00m | Avg: 20m 05s | Max: 22m 58s
      🟩 TestGPU            Pass: 100%/2   | Total: 44m 54s | Avg: 22m 27s | Max: 23m 45s
    🟩 sm
      🟩 90                 Pass: 100%/2   | Total: 20m 37s | Avg: 10m 18s | Max: 16m 17s
      🟩 90a                Pass: 100%/1   | Total:  4m 29s | Avg:  4m 29s | Max:  4m 29s
    🟩 std
      🟩 17                 Pass: 100%/14  | Total:  2h 29m | Avg: 10m 41s | Max: 30m 20s | Hits: 599%/2331  
      🟩 20                 Pass: 100%/24  | Total:  4h 26m | Avg: 11m 05s | Max: 32m 38s | Hits: 599%/777   
    
  • 🟩 thrust: Pass: 100%/37 | Total: 6h 22m | Avg: 10m 20s | Max: 35m 40s | Hits: 365%/9260

    🟩 cmake_options
      🟩 -DTHRUST_DISPATCH_TYPE=Force32bit Pass: 100%/2   | Total: 22m 10s | Avg: 11m 05s | Max: 16m 47s
    🟩 cpu
      🟩 amd64              Pass: 100%/35  | Total:  6h 13m | Avg: 10m 39s | Max: 35m 40s | Hits: 365%/9260  
      🟩 arm64              Pass: 100%/2   | Total:  9m 40s | Avg:  4m 50s | Max:  4m 58s
    🟩 ctk
      🟩 12.0               Pass: 100%/5   | Total: 48m 46s | Avg:  9m 45s | Max: 28m 21s | Hits: 365%/1852  
      🟩 12.5               Pass: 100%/2   | Total: 30m 55s | Avg: 15m 27s | Max: 15m 58s
      🟩 12.6               Pass: 100%/30  | Total:  5h 03m | Avg: 10m 06s | Max: 35m 40s | Hits: 365%/7408  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/2   | Total:  9m 56s | Avg:  4m 58s | Max:  5m 00s
      🟩 nvcc12.0           Pass: 100%/5   | Total: 48m 46s | Avg:  9m 45s | Max: 28m 21s | Hits: 365%/1852  
      🟩 nvcc12.5           Pass: 100%/2   | Total: 30m 55s | Avg: 15m 27s | Max: 15m 58s
      🟩 nvcc12.6           Pass: 100%/28  | Total:  4h 53m | Avg: 10m 28s | Max: 35m 40s | Hits: 365%/7408  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/2   | Total:  9m 56s | Avg:  4m 58s | Max:  5m 00s
      🟩 nvcc               Pass: 100%/35  | Total:  6h 12m | Avg: 10m 39s | Max: 35m 40s | Hits: 365%/9260  
    🟩 cxx
      🟩 Clang14            Pass: 100%/4   | Total: 20m 45s | Avg:  5m 11s | Max:  5m 24s
      🟩 Clang15            Pass: 100%/1   | Total:  5m 17s | Avg:  5m 17s | Max:  5m 17s
      🟩 Clang16            Pass: 100%/1   | Total:  5m 20s | Avg:  5m 20s | Max:  5m 20s
      🟩 Clang17            Pass: 100%/1   | Total:  5m 38s | Avg:  5m 38s | Max:  5m 38s
      🟩 Clang18            Pass: 100%/7   | Total: 46m 58s | Avg:  6m 42s | Max: 12m 45s
      🟩 GCC7               Pass: 100%/2   | Total: 10m 30s | Avg:  5m 15s | Max:  5m 16s
      🟩 GCC8               Pass: 100%/1   | Total:  5m 39s | Avg:  5m 39s | Max:  5m 39s
      🟩 GCC9               Pass: 100%/2   | Total: 11m 07s | Avg:  5m 33s | Max:  6m 01s
      🟩 GCC10              Pass: 100%/1   | Total:  5m 20s | Avg:  5m 20s | Max:  5m 20s
      🟩 GCC11              Pass: 100%/1   | Total:  5m 53s | Avg:  5m 53s | Max:  5m 53s
      🟩 GCC12              Pass: 100%/1   | Total:  6m 23s | Avg:  6m 23s | Max:  6m 23s
      🟩 GCC13              Pass: 100%/8   | Total:  1h 08m | Avg:  8m 36s | Max: 17m 12s
      🟩 MSVC14.29          Pass: 100%/2   | Total: 57m 56s | Avg: 28m 58s | Max: 29m 35s | Hits: 365%/3704  
      🟩 MSVC14.39          Pass: 100%/3   | Total:  1h 36m | Avg: 32m 03s | Max: 35m 40s | Hits: 365%/5556  
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 30m 55s | Avg: 15m 27s | Max: 15m 58s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/14  | Total:  1h 23m | Avg:  5m 59s | Max: 12m 45s
      🟩 GCC                Pass: 100%/16  | Total:  1h 53m | Avg:  7m 06s | Max: 17m 12s
      🟩 MSVC               Pass: 100%/5   | Total:  2h 34m | Avg: 30m 49s | Max: 35m 40s | Hits: 365%/9260  
      🟩 NVHPC              Pass: 100%/2   | Total: 30m 55s | Avg: 15m 27s | Max: 15m 58s
    🟩 gpu
      🟩 v100               Pass: 100%/37  | Total:  6h 22m | Avg: 10m 20s | Max: 35m 40s | Hits: 365%/9260  
    🟩 jobs
      🟩 Build              Pass: 100%/31  | Total:  4h 44m | Avg:  9m 11s | Max: 30m 21s | Hits: 365%/7408  
      🟩 TestCPU            Pass: 100%/3   | Total: 51m 19s | Avg: 17m 06s | Max: 35m 40s | Hits: 365%/1852  
      🟩 TestGPU            Pass: 100%/3   | Total: 46m 44s | Avg: 15m 34s | Max: 17m 12s
    🟩 sm
      🟩 90a                Pass: 100%/1   | Total:  4m 42s | Avg:  4m 42s | Max:  4m 42s
    🟩 std
      🟩 17                 Pass: 100%/14  | Total:  2h 37m | Avg: 11m 16s | Max: 30m 10s | Hits: 365%/5556  
      🟩 20                 Pass: 100%/21  | Total:  3h 22m | Avg:  9m 39s | Max: 35m 40s | Hits: 365%/3704  
    
  • 🟩 cudax: Pass: 100%/20 | Total: 2h 00m | Avg: 6m 00s | Max: 22m 45s | Hits: 582%/312

    🟩 cpu
      🟩 amd64              Pass: 100%/16  | Total:  1h 49m | Avg:  6m 52s | Max: 22m 45s | Hits: 582%/312   
      🟩 arm64              Pass: 100%/4   | Total: 10m 18s | Avg:  2m 34s | Max:  2m 38s
    🟩 ctk
      🟩 12.0               Pass: 100%/1   | Total: 11m 55s | Avg: 11m 55s | Max: 11m 55s | Hits: 582%/156   
      🟩 12.5               Pass: 100%/2   | Total: 11m 08s | Avg:  5m 34s | Max:  5m 41s
      🟩 12.6               Pass: 100%/17  | Total:  1h 37m | Avg:  5m 42s | Max: 22m 45s | Hits: 582%/156   
    🟩 cudacxx
      🟩 nvcc12.0           Pass: 100%/1   | Total: 11m 55s | Avg: 11m 55s | Max: 11m 55s | Hits: 582%/156   
      🟩 nvcc12.5           Pass: 100%/2   | Total: 11m 08s | Avg:  5m 34s | Max:  5m 41s
      🟩 nvcc12.6           Pass: 100%/17  | Total:  1h 37m | Avg:  5m 42s | Max: 22m 45s | Hits: 582%/156   
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/20  | Total:  2h 00m | Avg:  6m 00s | Max: 22m 45s | Hits: 582%/312   
    🟩 cxx
      🟩 Clang14            Pass: 100%/1   | Total:  3m 09s | Avg:  3m 09s | Max:  3m 09s
      🟩 Clang15            Pass: 100%/1   | Total:  3m 24s | Avg:  3m 24s | Max:  3m 24s
      🟩 Clang16            Pass: 100%/1   | Total:  3m 17s | Avg:  3m 17s | Max:  3m 17s
      🟩 Clang17            Pass: 100%/1   | Total:  3m 16s | Avg:  3m 16s | Max:  3m 16s
      🟩 Clang18            Pass: 100%/4   | Total: 28m 31s | Avg:  7m 07s | Max: 20m 18s
      🟩 GCC10              Pass: 100%/1   | Total:  3m 11s | Avg:  3m 11s | Max:  3m 11s
      🟩 GCC11              Pass: 100%/1   | Total:  3m 14s | Avg:  3m 14s | Max:  3m 14s
      🟩 GCC12              Pass: 100%/2   | Total: 25m 45s | Avg: 12m 52s | Max: 22m 45s
      🟩 GCC13              Pass: 100%/4   | Total: 10m 53s | Avg:  2m 43s | Max:  2m 55s
      🟩 MSVC14.36          Pass: 100%/1   | Total: 11m 55s | Avg: 11m 55s | Max: 11m 55s | Hits: 582%/156   
      🟩 MSVC14.39          Pass: 100%/1   | Total: 12m 28s | Avg: 12m 28s | Max: 12m 28s | Hits: 582%/156   
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 11m 08s | Avg:  5m 34s | Max:  5m 41s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/8   | Total: 41m 37s | Avg:  5m 12s | Max: 20m 18s
      🟩 GCC                Pass: 100%/8   | Total: 43m 03s | Avg:  5m 22s | Max: 22m 45s
      🟩 MSVC               Pass: 100%/2   | Total: 24m 23s | Avg: 12m 11s | Max: 12m 28s | Hits: 582%/312   
      🟩 NVHPC              Pass: 100%/2   | Total: 11m 08s | Avg:  5m 34s | Max:  5m 41s
    🟩 gpu
      🟩 v100               Pass: 100%/20  | Total:  2h 00m | Avg:  6m 00s | Max: 22m 45s | Hits: 582%/312   
    🟩 jobs
      🟩 Build              Pass: 100%/18  | Total:  1h 17m | Avg:  4m 17s | Max: 12m 28s | Hits: 582%/312   
      🟩 Test               Pass: 100%/2   | Total: 43m 03s | Avg: 21m 31s | Max: 22m 45s
    🟩 sm
      🟩 90                 Pass: 100%/1   | Total:  2m 55s | Avg:  2m 55s | Max:  2m 55s
      🟩 90a                Pass: 100%/1   | Total:  2m 52s | Avg:  2m 52s | Max:  2m 52s
    🟩 std
      🟩 17                 Pass: 100%/4   | Total: 13m 41s | Avg:  3m 25s | Max:  5m 41s
      🟩 20                 Pass: 100%/16  | Total:  1h 46m | Avg:  6m 39s | Max: 22m 45s | Hits: 582%/312   
    
  • 🟩 cccl_c_parallel: Pass: 100%/2 | Total: 9m 02s | Avg: 4m 31s | Max: 7m 07s

    🟩 cpu
      🟩 amd64              Pass: 100%/2   | Total:  9m 02s | Avg:  4m 31s | Max:  7m 07s
    🟩 ctk
      🟩 12.6               Pass: 100%/2   | Total:  9m 02s | Avg:  4m 31s | Max:  7m 07s
    🟩 cudacxx
      🟩 nvcc12.6           Pass: 100%/2   | Total:  9m 02s | Avg:  4m 31s | Max:  7m 07s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/2   | Total:  9m 02s | Avg:  4m 31s | Max:  7m 07s
    🟩 cxx
      🟩 GCC13              Pass: 100%/2   | Total:  9m 02s | Avg:  4m 31s | Max:  7m 07s
    🟩 cxx_family
      🟩 GCC                Pass: 100%/2   | Total:  9m 02s | Avg:  4m 31s | Max:  7m 07s
    🟩 gpu
      🟩 v100               Pass: 100%/2   | Total:  9m 02s | Avg:  4m 31s | Max:  7m 07s
    🟩 jobs
      🟩 Build              Pass: 100%/1   | Total:  1m 55s | Avg:  1m 55s | Max:  1m 55s
      🟩 Test               Pass: 100%/1   | Total:  7m 07s | Avg:  7m 07s | Max:  7m 07s
    
  • 🟩 python: Pass: 100%/1 | Total: 28m 56s | Avg: 28m 56s | Max: 28m 56s

    🟩 cpu
      🟩 amd64              Pass: 100%/1   | Total: 28m 56s | Avg: 28m 56s | Max: 28m 56s
    🟩 ctk
      🟩 12.6               Pass: 100%/1   | Total: 28m 56s | Avg: 28m 56s | Max: 28m 56s
    🟩 cudacxx
      🟩 nvcc12.6           Pass: 100%/1   | Total: 28m 56s | Avg: 28m 56s | Max: 28m 56s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/1   | Total: 28m 56s | Avg: 28m 56s | Max: 28m 56s
    🟩 cxx
      🟩 GCC13              Pass: 100%/1   | Total: 28m 56s | Avg: 28m 56s | Max: 28m 56s
    🟩 cxx_family
      🟩 GCC                Pass: 100%/1   | Total: 28m 56s | Avg: 28m 56s | Max: 28m 56s
    🟩 gpu
      🟩 v100               Pass: 100%/1   | Total: 28m 56s | Avg: 28m 56s | Max: 28m 56s
    🟩 jobs
      🟩 Test               Pass: 100%/1   | Total: 28m 56s | Avg: 28m 56s | Max: 28m 56s
    

👃 Inspect Changes

Modifications in project?

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

Modifications in project or dependencies?

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

🏃‍ Runner counts (total jobs: 144)

# Runner
98 linux-amd64-cpu16
19 linux-amd64-gpu-v100-latest-1
16 windows-amd64-cpu16
10 linux-arm64-cpu16
1 linux-amd64-gpu-h100-latest-1-testing

Copy link
Contributor

🟩 CI finished in 2h 00m: Pass: 100%/144 | Total: 1d 00h | Avg: 10m 01s | Max: 38m 14s | Hits: 554%/25191
  • 🟩 libcudacxx: Pass: 100%/46 | Total: 8h 14m | Avg: 10m 45s | Max: 38m 14s | Hits: 682%/12511

    🟩 cpu
      🟩 amd64              Pass: 100%/44  | Total:  8h 07m | Avg: 11m 04s | Max: 38m 14s | Hits: 682%/12511 
      🟩 arm64              Pass: 100%/2   | Total:  7m 11s | Avg:  3m 35s | Max:  3m 48s
    🟩 ctk
      🟩 12.0               Pass: 100%/8   | Total:  1h 06m | Avg:  8m 19s | Max: 24m 17s | Hits: 682%/4883  
      🟩 12.5               Pass: 100%/2   | Total: 18m 02s | Avg:  9m 01s | Max:  9m 05s
      🟩 12.6               Pass: 100%/36  | Total:  6h 49m | Avg: 11m 23s | Max: 38m 14s | Hits: 682%/7628  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/4   | Total:  1h 07m | Avg: 16m 51s | Max: 22m 00s
      🟩 nvcc12.0           Pass: 100%/8   | Total:  1h 06m | Avg:  8m 19s | Max: 24m 17s | Hits: 682%/4883  
      🟩 nvcc12.5           Pass: 100%/2   | Total: 18m 02s | Avg:  9m 01s | Max:  9m 05s
      🟩 nvcc12.6           Pass: 100%/32  | Total:  5h 42m | Avg: 10m 42s | Max: 38m 14s | Hits: 682%/7628  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/4   | Total:  1h 07m | Avg: 16m 51s | Max: 22m 00s
      🟩 nvcc               Pass: 100%/42  | Total:  7h 07m | Avg: 10m 10s | Max: 38m 14s | Hits: 682%/12511 
    🟩 cxx
      🟩 Clang14            Pass: 100%/6   | Total: 23m 07s | Avg:  3m 51s | Max:  4m 21s
      🟩 Clang15            Pass: 100%/1   | Total:  4m 36s | Avg:  4m 36s | Max:  4m 36s
      🟩 Clang16            Pass: 100%/1   | Total:  4m 38s | Avg:  4m 38s | Max:  4m 38s
      🟩 Clang17            Pass: 100%/1   | Total:  4m 35s | Avg:  4m 35s | Max:  4m 35s
      🟩 Clang18            Pass: 100%/8   | Total:  1h 37m | Avg: 12m 11s | Max: 22m 00s
      🟩 GCC7               Pass: 100%/5   | Total: 16m 52s | Avg:  3m 22s | Max:  3m 47s
      🟩 GCC8               Pass: 100%/1   | Total:  3m 56s | Avg:  3m 56s | Max:  3m 56s
      🟩 GCC9               Pass: 100%/3   | Total: 10m 02s | Avg:  3m 20s | Max:  3m 47s
      🟩 GCC10              Pass: 100%/1   | Total:  3m 48s | Avg:  3m 48s | Max:  3m 48s
      🟩 GCC11              Pass: 100%/1   | Total:  4m 08s | Avg:  4m 08s | Max:  4m 08s
      🟩 GCC12              Pass: 100%/1   | Total:  4m 15s | Avg:  4m 15s | Max:  4m 15s
      🟩 GCC13              Pass: 100%/10  | Total:  2h 53m | Avg: 17m 19s | Max: 38m 14s
      🟩 MSVC14.29          Pass: 100%/3   | Total:  1h 10m | Avg: 23m 37s | Max: 24m 17s | Hits: 682%/7375  
      🟩 MSVC14.39          Pass: 100%/2   | Total: 55m 03s | Avg: 27m 31s | Max: 28m 19s | Hits: 681%/5136  
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 18m 02s | Avg:  9m 01s | Max:  9m 05s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/17  | Total:  2h 14m | Avg:  7m 54s | Max: 22m 00s
      🟩 GCC                Pass: 100%/22  | Total:  3h 36m | Avg:  9m 49s | Max: 38m 14s
      🟩 MSVC               Pass: 100%/5   | Total:  2h 05m | Avg: 25m 10s | Max: 28m 19s | Hits: 682%/12511 
      🟩 NVHPC              Pass: 100%/2   | Total: 18m 02s | Avg:  9m 01s | Max:  9m 05s
    🟩 gpu
      🟩 v100               Pass: 100%/46  | Total:  8h 14m | Avg: 10m 45s | Max: 38m 14s | Hits: 682%/12511 
    🟩 jobs
      🟩 Build              Pass: 100%/39  | Total:  5h 18m | Avg:  8m 10s | Max: 28m 19s | Hits: 682%/12511 
      🟩 NVRTC              Pass: 100%/4   | Total:  2h 12m | Avg: 33m 06s | Max: 38m 14s
      🟩 Test               Pass: 100%/2   | Total: 41m 37s | Avg: 20m 48s | Max: 23m 54s
      🟩 VerifyCodegen      Pass: 100%/1   | Total:  1m 57s | Avg:  1m 57s | Max:  1m 57s
    🟩 sm
      🟩 90                 Pass: 100%/1   | Total: 12m 06s | Avg: 12m 06s | Max: 12m 06s
      🟩 90a                Pass: 100%/2   | Total: 17m 59s | Avg:  8m 59s | Max: 14m 01s
    🟩 std
      🟩 11                 Pass: 100%/6   | Total: 45m 30s | Avg:  7m 35s | Max: 29m 47s
      🟩 14                 Pass: 100%/4   | Total:  1h 03m | Avg: 15m 59s | Max: 33m 58s | Hits: 682%/2401  
      🟩 17                 Pass: 100%/14  | Total:  2h 44m | Avg: 11m 43s | Max: 30m 26s | Hits: 683%/7466  
      🟩 20                 Pass: 100%/21  | Total:  3h 39m | Avg: 10m 25s | Max: 38m 14s | Hits: 680%/2644  
    
  • 🟩 cub: Pass: 100%/38 | Total: 6h 53m | Avg: 10m 52s | Max: 32m 03s | Hits: 599%/3108

    🟩 cpu
      🟩 amd64              Pass: 100%/36  | Total:  6h 43m | Avg: 11m 12s | Max: 32m 03s | Hits: 599%/3108  
      🟩 arm64              Pass: 100%/2   | Total:  9m 37s | Avg:  4m 48s | Max:  4m 52s
    🟩 ctk
      🟩 12.0               Pass: 100%/5   | Total: 45m 44s | Avg:  9m 08s | Max: 24m 46s | Hits: 599%/777   
      🟩 12.5               Pass: 100%/2   | Total: 19m 01s | Avg:  9m 30s | Max:  9m 54s
      🟩 12.6               Pass: 100%/31  | Total:  5h 48m | Avg: 11m 14s | Max: 32m 03s | Hits: 599%/2331  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/2   | Total:  8m 45s | Avg:  4m 22s | Max:  4m 25s
      🟩 nvcc12.0           Pass: 100%/5   | Total: 45m 44s | Avg:  9m 08s | Max: 24m 46s | Hits: 599%/777   
      🟩 nvcc12.5           Pass: 100%/2   | Total: 19m 01s | Avg:  9m 30s | Max:  9m 54s
      🟩 nvcc12.6           Pass: 100%/29  | Total:  5h 39m | Avg: 11m 43s | Max: 32m 03s | Hits: 599%/2331  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/2   | Total:  8m 45s | Avg:  4m 22s | Max:  4m 25s
      🟩 nvcc               Pass: 100%/36  | Total:  6h 44m | Avg: 11m 14s | Max: 32m 03s | Hits: 599%/3108  
    🟩 cxx
      🟩 Clang14            Pass: 100%/4   | Total: 20m 57s | Avg:  5m 14s | Max:  5m 23s
      🟩 Clang15            Pass: 100%/1   | Total:  5m 53s | Avg:  5m 53s | Max:  5m 53s
      🟩 Clang16            Pass: 100%/1   | Total:  5m 48s | Avg:  5m 48s | Max:  5m 48s
      🟩 Clang17            Pass: 100%/1   | Total:  5m 49s | Avg:  5m 49s | Max:  5m 49s
      🟩 Clang18            Pass: 100%/7   | Total:  1h 12m | Avg: 10m 24s | Max: 27m 03s
      🟩 GCC7               Pass: 100%/2   | Total: 10m 22s | Avg:  5m 11s | Max:  5m 19s
      🟩 GCC8               Pass: 100%/1   | Total:  5m 27s | Avg:  5m 27s | Max:  5m 27s
      🟩 GCC9               Pass: 100%/2   | Total: 11m 24s | Avg:  5m 42s | Max:  5m 55s
      🟩 GCC10              Pass: 100%/1   | Total:  5m 43s | Avg:  5m 43s | Max:  5m 43s
      🟩 GCC11              Pass: 100%/1   | Total:  5m 46s | Avg:  5m 46s | Max:  5m 46s
      🟩 GCC12              Pass: 100%/3   | Total: 26m 11s | Avg:  8m 43s | Max: 16m 07s
      🟩 GCC13              Pass: 100%/8   | Total:  1h 42m | Avg: 12m 50s | Max: 24m 24s
      🟩 MSVC14.29          Pass: 100%/2   | Total: 54m 22s | Avg: 27m 11s | Max: 29m 36s | Hits: 599%/1554  
      🟩 MSVC14.39          Pass: 100%/2   | Total:  1h 00m | Avg: 30m 29s | Max: 32m 03s | Hits: 599%/1554  
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 19m 01s | Avg:  9m 30s | Max:  9m 54s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/14  | Total:  1h 51m | Avg:  7m 57s | Max: 27m 03s
      🟩 GCC                Pass: 100%/18  | Total:  2h 47m | Avg:  9m 18s | Max: 24m 24s
      🟩 MSVC               Pass: 100%/4   | Total:  1h 55m | Avg: 28m 50s | Max: 32m 03s | Hits: 599%/3108  
      🟩 NVHPC              Pass: 100%/2   | Total: 19m 01s | Avg:  9m 30s | Max:  9m 54s
    🟩 gpu
      🟩 h100               Pass: 100%/2   | Total: 20m 30s | Avg: 10m 15s | Max: 16m 07s
      🟩 v100               Pass: 100%/36  | Total:  6h 32m | Avg: 10m 54s | Max: 32m 03s | Hits: 599%/3108  
    🟩 jobs
      🟩 Build              Pass: 100%/31  | Total:  4h 27m | Avg:  8m 36s | Max: 32m 03s | Hits: 599%/3108  
      🟩 DeviceLaunch       Pass: 100%/1   | Total: 20m 30s | Avg: 20m 30s | Max: 20m 30s
      🟩 GraphCapture       Pass: 100%/1   | Total: 16m 33s | Avg: 16m 33s | Max: 16m 33s
      🟩 HostLaunch         Pass: 100%/3   | Total: 57m 50s | Avg: 19m 16s | Max: 21m 23s
      🟩 TestGPU            Pass: 100%/2   | Total: 51m 27s | Avg: 25m 43s | Max: 27m 03s
    🟩 sm
      🟩 90                 Pass: 100%/2   | Total: 20m 30s | Avg: 10m 15s | Max: 16m 07s
      🟩 90a                Pass: 100%/1   | Total:  4m 26s | Avg:  4m 26s | Max:  4m 26s
    🟩 std
      🟩 17                 Pass: 100%/14  | Total:  2h 26m | Avg: 10m 29s | Max: 29m 36s | Hits: 599%/2331  
      🟩 20                 Pass: 100%/24  | Total:  4h 26m | Avg: 11m 06s | Max: 32m 03s | Hits: 599%/777   
    
  • 🟩 thrust: Pass: 100%/37 | Total: 6h 23m | Avg: 10m 21s | Max: 36m 01s | Hits: 365%/9260

    🟩 cmake_options
      🟩 -DTHRUST_DISPATCH_TYPE=Force32bit Pass: 100%/2   | Total: 23m 24s | Avg: 11m 42s | Max: 17m 55s
    🟩 cpu
      🟩 amd64              Pass: 100%/35  | Total:  6h 13m | Avg: 10m 41s | Max: 36m 01s | Hits: 365%/9260  
      🟩 arm64              Pass: 100%/2   | Total:  9m 35s | Avg:  4m 47s | Max:  4m 58s
    🟩 ctk
      🟩 12.0               Pass: 100%/5   | Total: 46m 42s | Avg:  9m 20s | Max: 26m 32s | Hits: 365%/1852  
      🟩 12.5               Pass: 100%/2   | Total: 30m 07s | Avg: 15m 03s | Max: 15m 38s
      🟩 12.6               Pass: 100%/30  | Total:  5h 06m | Avg: 10m 13s | Max: 36m 01s | Hits: 365%/7408  
    🟩 cudacxx
      🟩 ClangCUDA18        Pass: 100%/2   | Total: 10m 10s | Avg:  5m 05s | Max:  5m 11s
      🟩 nvcc12.0           Pass: 100%/5   | Total: 46m 42s | Avg:  9m 20s | Max: 26m 32s | Hits: 365%/1852  
      🟩 nvcc12.5           Pass: 100%/2   | Total: 30m 07s | Avg: 15m 03s | Max: 15m 38s
      🟩 nvcc12.6           Pass: 100%/28  | Total:  4h 56m | Avg: 10m 35s | Max: 36m 01s | Hits: 365%/7408  
    🟩 cudacxx_family
      🟩 ClangCUDA          Pass: 100%/2   | Total: 10m 10s | Avg:  5m 05s | Max:  5m 11s
      🟩 nvcc               Pass: 100%/35  | Total:  6h 13m | Avg: 10m 40s | Max: 36m 01s | Hits: 365%/9260  
    🟩 cxx
      🟩 Clang14            Pass: 100%/4   | Total: 21m 13s | Avg:  5m 18s | Max:  5m 54s
      🟩 Clang15            Pass: 100%/1   | Total:  5m 47s | Avg:  5m 47s | Max:  5m 47s
      🟩 Clang16            Pass: 100%/1   | Total:  5m 17s | Avg:  5m 17s | Max:  5m 17s
      🟩 Clang17            Pass: 100%/1   | Total:  5m 54s | Avg:  5m 54s | Max:  5m 54s
      🟩 Clang18            Pass: 100%/7   | Total: 51m 16s | Avg:  7m 19s | Max: 17m 49s
      🟩 GCC7               Pass: 100%/2   | Total: 10m 50s | Avg:  5m 25s | Max:  5m 41s
      🟩 GCC8               Pass: 100%/1   | Total:  5m 29s | Avg:  5m 29s | Max:  5m 29s
      🟩 GCC9               Pass: 100%/2   | Total: 10m 58s | Avg:  5m 29s | Max:  6m 01s
      🟩 GCC10              Pass: 100%/1   | Total:  5m 33s | Avg:  5m 33s | Max:  5m 33s
      🟩 GCC11              Pass: 100%/1   | Total:  5m 20s | Avg:  5m 20s | Max:  5m 20s
      🟩 GCC12              Pass: 100%/1   | Total:  6m 06s | Avg:  6m 06s | Max:  6m 06s
      🟩 GCC13              Pass: 100%/8   | Total:  1h 07m | Avg:  8m 27s | Max: 17m 55s
      🟩 MSVC14.29          Pass: 100%/2   | Total: 55m 27s | Avg: 27m 43s | Max: 28m 55s | Hits: 365%/3704  
      🟩 MSVC14.39          Pass: 100%/3   | Total:  1h 36m | Avg: 32m 12s | Max: 36m 01s | Hits: 365%/5556  
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 30m 07s | Avg: 15m 03s | Max: 15m 38s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/14  | Total:  1h 29m | Avg:  6m 23s | Max: 17m 49s
      🟩 GCC                Pass: 100%/16  | Total:  1h 51m | Avg:  6m 59s | Max: 17m 55s
      🟩 MSVC               Pass: 100%/5   | Total:  2h 32m | Avg: 30m 24s | Max: 36m 01s | Hits: 365%/9260  
      🟩 NVHPC              Pass: 100%/2   | Total: 30m 07s | Avg: 15m 03s | Max: 15m 38s
    🟩 gpu
      🟩 v100               Pass: 100%/37  | Total:  6h 23m | Avg: 10m 21s | Max: 36m 01s | Hits: 365%/9260  
    🟩 jobs
      🟩 Build              Pass: 100%/31  | Total:  4h 41m | Avg:  9m 04s | Max: 30m 45s | Hits: 365%/7408  
      🟩 TestCPU            Pass: 100%/3   | Total: 51m 11s | Avg: 17m 03s | Max: 36m 01s | Hits: 365%/1852  
      🟩 TestGPU            Pass: 100%/3   | Total: 51m 00s | Avg: 17m 00s | Max: 17m 55s
    🟩 sm
      🟩 90a                Pass: 100%/1   | Total:  4m 50s | Avg:  4m 50s | Max:  4m 50s
    🟩 std
      🟩 17                 Pass: 100%/14  | Total:  2h 35m | Avg: 11m 06s | Max: 30m 45s | Hits: 365%/5556  
      🟩 20                 Pass: 100%/21  | Total:  3h 24m | Avg:  9m 44s | Max: 36m 01s | Hits: 365%/3704  
    
  • 🟩 cudax: Pass: 100%/20 | Total: 1h 50m | Avg: 5m 31s | Max: 18m 42s | Hits: 582%/312

    🟩 cpu
      🟩 amd64              Pass: 100%/16  | Total:  1h 40m | Avg:  6m 15s | Max: 18m 42s | Hits: 582%/312   
      🟩 arm64              Pass: 100%/4   | Total: 10m 23s | Avg:  2m 35s | Max:  2m 42s
    🟩 ctk
      🟩 12.0               Pass: 100%/1   | Total: 10m 50s | Avg: 10m 50s | Max: 10m 50s | Hits: 582%/156   
      🟩 12.5               Pass: 100%/2   | Total: 10m 17s | Avg:  5m 08s | Max:  5m 13s
      🟩 12.6               Pass: 100%/17  | Total:  1h 29m | Avg:  5m 15s | Max: 18m 42s | Hits: 582%/156   
    🟩 cudacxx
      🟩 nvcc12.0           Pass: 100%/1   | Total: 10m 50s | Avg: 10m 50s | Max: 10m 50s | Hits: 582%/156   
      🟩 nvcc12.5           Pass: 100%/2   | Total: 10m 17s | Avg:  5m 08s | Max:  5m 13s
      🟩 nvcc12.6           Pass: 100%/17  | Total:  1h 29m | Avg:  5m 15s | Max: 18m 42s | Hits: 582%/156   
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/20  | Total:  1h 50m | Avg:  5m 31s | Max: 18m 42s | Hits: 582%/312   
    🟩 cxx
      🟩 Clang14            Pass: 100%/1   | Total:  3m 09s | Avg:  3m 09s | Max:  3m 09s
      🟩 Clang15            Pass: 100%/1   | Total:  3m 29s | Avg:  3m 29s | Max:  3m 29s
      🟩 Clang16            Pass: 100%/1   | Total:  3m 25s | Avg:  3m 25s | Max:  3m 25s
      🟩 Clang17            Pass: 100%/1   | Total:  3m 22s | Avg:  3m 22s | Max:  3m 22s
      🟩 Clang18            Pass: 100%/4   | Total: 25m 28s | Avg:  6m 22s | Max: 16m 42s
      🟩 GCC10              Pass: 100%/1   | Total:  3m 11s | Avg:  3m 11s | Max:  3m 11s
      🟩 GCC11              Pass: 100%/1   | Total:  3m 10s | Avg:  3m 10s | Max:  3m 10s
      🟩 GCC12              Pass: 100%/2   | Total: 22m 01s | Avg: 11m 00s | Max: 18m 42s
      🟩 GCC13              Pass: 100%/4   | Total: 10m 41s | Avg:  2m 40s | Max:  2m 49s
      🟩 MSVC14.36          Pass: 100%/1   | Total: 10m 50s | Avg: 10m 50s | Max: 10m 50s | Hits: 582%/156   
      🟩 MSVC14.39          Pass: 100%/1   | Total: 11m 26s | Avg: 11m 26s | Max: 11m 26s | Hits: 582%/156   
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 10m 17s | Avg:  5m 08s | Max:  5m 13s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/8   | Total: 38m 53s | Avg:  4m 51s | Max: 16m 42s
      🟩 GCC                Pass: 100%/8   | Total: 39m 03s | Avg:  4m 52s | Max: 18m 42s
      🟩 MSVC               Pass: 100%/2   | Total: 22m 16s | Avg: 11m 08s | Max: 11m 26s | Hits: 582%/312   
      🟩 NVHPC              Pass: 100%/2   | Total: 10m 17s | Avg:  5m 08s | Max:  5m 13s
    🟩 gpu
      🟩 v100               Pass: 100%/20  | Total:  1h 50m | Avg:  5m 31s | Max: 18m 42s | Hits: 582%/312   
    🟩 jobs
      🟩 Build              Pass: 100%/18  | Total:  1h 15m | Avg:  4m 10s | Max: 11m 26s | Hits: 582%/312   
      🟩 Test               Pass: 100%/2   | Total: 35m 24s | Avg: 17m 42s | Max: 18m 42s
    🟩 sm
      🟩 90                 Pass: 100%/1   | Total:  2m 49s | Avg:  2m 49s | Max:  2m 49s
      🟩 90a                Pass: 100%/1   | Total:  2m 47s | Avg:  2m 47s | Max:  2m 47s
    🟩 std
      🟩 17                 Pass: 100%/4   | Total: 13m 16s | Avg:  3m 19s | Max:  5m 13s
      🟩 20                 Pass: 100%/16  | Total:  1h 37m | Avg:  6m 04s | Max: 18m 42s | Hits: 582%/312   
    
  • 🟩 cccl_c_parallel: Pass: 100%/2 | Total: 10m 25s | Avg: 5m 12s | Max: 8m 28s

    🟩 cpu
      🟩 amd64              Pass: 100%/2   | Total: 10m 25s | Avg:  5m 12s | Max:  8m 28s
    🟩 ctk
      🟩 12.6               Pass: 100%/2   | Total: 10m 25s | Avg:  5m 12s | Max:  8m 28s
    🟩 cudacxx
      🟩 nvcc12.6           Pass: 100%/2   | Total: 10m 25s | Avg:  5m 12s | Max:  8m 28s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/2   | Total: 10m 25s | Avg:  5m 12s | Max:  8m 28s
    🟩 cxx
      🟩 GCC13              Pass: 100%/2   | Total: 10m 25s | Avg:  5m 12s | Max:  8m 28s
    🟩 cxx_family
      🟩 GCC                Pass: 100%/2   | Total: 10m 25s | Avg:  5m 12s | Max:  8m 28s
    🟩 gpu
      🟩 v100               Pass: 100%/2   | Total: 10m 25s | Avg:  5m 12s | Max:  8m 28s
    🟩 jobs
      🟩 Build              Pass: 100%/1   | Total:  1m 57s | Avg:  1m 57s | Max:  1m 57s
      🟩 Test               Pass: 100%/1   | Total:  8m 28s | Avg:  8m 28s | Max:  8m 28s
    
  • 🟩 python: Pass: 100%/1 | Total: 30m 54s | Avg: 30m 54s | Max: 30m 54s

    🟩 cpu
      🟩 amd64              Pass: 100%/1   | Total: 30m 54s | Avg: 30m 54s | Max: 30m 54s
    🟩 ctk
      🟩 12.6               Pass: 100%/1   | Total: 30m 54s | Avg: 30m 54s | Max: 30m 54s
    🟩 cudacxx
      🟩 nvcc12.6           Pass: 100%/1   | Total: 30m 54s | Avg: 30m 54s | Max: 30m 54s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/1   | Total: 30m 54s | Avg: 30m 54s | Max: 30m 54s
    🟩 cxx
      🟩 GCC13              Pass: 100%/1   | Total: 30m 54s | Avg: 30m 54s | Max: 30m 54s
    🟩 cxx_family
      🟩 GCC                Pass: 100%/1   | Total: 30m 54s | Avg: 30m 54s | Max: 30m 54s
    🟩 gpu
      🟩 v100               Pass: 100%/1   | Total: 30m 54s | Avg: 30m 54s | Max: 30m 54s
    🟩 jobs
      🟩 Test               Pass: 100%/1   | Total: 30m 54s | Avg: 30m 54s | Max: 30m 54s
    

👃 Inspect Changes

Modifications in project?

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

Modifications in project or dependencies?

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

🏃‍ Runner counts (total jobs: 144)

# Runner
98 linux-amd64-cpu16
19 linux-amd64-gpu-v100-latest-1
16 windows-amd64-cpu16
10 linux-arm64-cpu16
1 linux-amd64-gpu-h100-latest-1-testing

@fbusato fbusato enabled auto-merge (squash) January 16, 2025 01:50
@@ -112,7 +112,14 @@ Feature availability:

- C++26 ``std::dims`` is available in C++14.

- C++23 ``forward_like``, ``to_underlying`` and ``unreachable`` from ``<utility>`` are available in C++11.
- C++26 ``std::linalg`` accessors, transposed layout, and related functions are available in C++17.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we were to maintain the chronological order maybe the C++26 segments should all go below the last C+23 segment in #L124, unless there is a specific reason why we grouped them like that.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, that would require to grab C++26 std::dim along, which is not part of that PR. As always, not a hard suggestion.

Provided functionalities
------------------------

- ``scaled()`` `std::linalg::scaled <https://en.cppreference.com/w/cpp/numeric/linalg/scaled>`_
Copy link
Member

@gonidelis gonidelis Jan 16, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure if we want to add our own short documentation for these (sounds taxing), but cppref has no information whatsoever yet, so a new user would have to dig on their own to find out what they are doing.

@fbusato fbusato merged commit 3cc47b2 into NVIDIA:main Jan 16, 2025
162 checks passed
davebayer pushed a commit to davebayer/cccl that referenced this pull request Jan 18, 2025
davebayer pushed a commit to davebayer/cccl that referenced this pull request Jan 18, 2025
davebayer added a commit to davebayer/cccl that referenced this pull request Jan 20, 2025
implement `add_sat`

split `signed`/`unsigned` implementation, improve implementation for MSVC

improve device `add_sat` implementation

add `add_sat` test

improve generic `add_sat` implementation for signed types

implement `sub_sat`

allow more msvc intrinsics on x86

add op tests

partially implement `mul_sat`

implement `div_sat` and `saturate_cast`

add `saturate_cast` test

simplify `div_sat` test

Deprectate C++11 and C++14 for libcu++ (#3173)

* Deprectate C++11 and C++14 for libcu++

Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com>

Implement `abs` and `div` from `cstdlib` (#3153)

* implement integer abs functions
* improve tests, fix constexpr support
* just use the our implementation
* implement `cuda::std::div`
* prefer host's `div_t` like types
* provide `cuda::std::abs` overloads for floats
* allow fp abs for NVRTC
* silence msvc's warning about conversion from floating point to integral

Fix missing radix sort policies (#3174)

Fixes NVBug 5009941

Introduces new `DeviceReduce::Arg{Min,Max}` interface with two output iterators (#3148)

* introduces new arg{min,max} interface with two output iterators

* adds fp inf tests

* fixes docs

* improves code example

* fixes exec space specifier

* trying to fix deprecation warning for more compilers

* inlines unzip operator

* trying to fix deprecation warning for nvhpc

* integrates supression fixes in diagnostics

* pre-ctk 11.5 deprecation suppression

* fixes icc

* fix for pre-ctk11.5

* cleans up deprecation suppression

* cleanup

Extend tuning documentation (#3179)

Add codespell pre-commit hook, fix typos in CCCL (#3168)

* Add codespell pre-commit hook
* Automatic changes from codespell.
* Manual changes.

Fix parameter space for TUNE_LOAD in scan benchmark (#3176)

fix various old compiler checks (#3178)

implement C++26 `std::projected` (#3175)

Fix pre-commit config for codespell and remaining typos (#3182)

Massive cleanup of our config (#3155)

Fix UB in atomics with automatic storage (#2586)

* Adds specialized local cuda atomics and injects them into most atomics paths.

Co-authored-by: Georgy Evtushenko <evtushenko.georgy@gmail.com>
Co-authored-by: gonzalobg <65027571+gonzalobg@users.noreply.github.com>

* Allow CUDA 12.2 to keep perf, this addresses earlier comments in #478

* Remove extraneous double brackets in unformatted code.

* Merge unsafe atomic logic into `__cuda_is_local`.

* Use `const_cast` for type conversions in cuda_local.h

* Fix build issues from interface changes

* Fix missing __nanosleep on sm70-

* Guard __isLocal from NVHPC

* Use PTX instead of running nothing from NVHPC

* fixup /s/nvrtc/nvhpc

* Fixup missing CUDA ifdef surrounding device code

* Fix codegen

* Bypass some sort of compiler bug on GCC7

* Apply suggestions from code review

* Use unsafe automatic storage atomics in codegen tests

---------

Co-authored-by: Georgy Evtushenko <evtushenko.georgy@gmail.com>
Co-authored-by: gonzalobg <65027571+gonzalobg@users.noreply.github.com>
Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Refactor the source code layout for `cuda.parallel` (#3177)

* Refactor the source layout for cuda.parallel

* Add copyright

* Address review feedback

* Don't import anything into `experimental` namespace

* fix import

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

new type-erased memory resources (#2824)

s/_LIBCUDACXX_DECLSPEC_EMPTY_BASES/_CCCL_DECLSPEC_EMPTY_BASES/g (#3186)

Document address stability of `thrust::transform` (#3181)

* Do not document _LIBCUDACXX_MARK_CAN_COPY_ARGUMENTS
* Reformat and fix UnaryFunction/BinaryFunction in transform docs
* Mention transform can use proclaim_copyable_arguments
* Document cuda::proclaims_copyable_arguments better
* Deprecate depending on transform functor argument addresses

Fixes: #3053

turn off cuda version check for clangd (#3194)

[STF] jacobi example based on parallel_for (#3187)

* Simple jacobi example with parallel for and reductions

* clang-format

* remove useless capture list

fixes pre-nv_diag suppression issues (#3189)

Prefer c2h::type_name over c2h::demangle (#3195)

Fix memcpy_async* tests (#3197)

* memcpy_async_tx: Fix bug in test

Two bugs, one of which occurs in practice:

1. There is a missing fence.proxy.space::global between the writes to
   global memory and the memcpy_async_tx. (Occurs in practice)

2. The end of the kernel should be fenced with `__syncthreads()`,
   because the barrier is invalidated in the destructor. If other
   threads are still waiting on it, there will be UB. (Has not yet
   manifested itself)

* cp_async_bulk_tensor: Pre-emptively fence more in test

Add type annotations and mypy checks for `cuda.parallel`  (#3180)

* Refactor the source layout for cuda.parallel

* Add initial type annotations

* Update pre-commit config

* More typing

* Fix bad merge

* Fix TYPE_CHECKING and numpy annotations

* typing bindings.py correctly

* Address review feedback

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Fix rendering of cuda.parallel docs (#3192)

* Fix pre-commit config for codespell and remaining typos

* Fix rendering of docs for cuda.parallel

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Enable PDL for DeviceMergeSortBlockSortKernel (#3199)

The kernel already contains a call to _CCCL_PDL_GRID_DEPENDENCY_SYNC.
This commit enables PDL when launching the kernel.

Adds support for large `num_items` to `DeviceReduce::{ArgMin,ArgMax}` (#2647)

* adds benchmarks for reduce::arg{min,max}

* preliminary streaming arg-extremum reduction

* fixes implicit conversion

* uses streaming dispatch class

* changes arg benches to use new streaming reduce

* streaming arg-extrema reduction

* fixes style

* fixes compilation failures

* cleanups

* adds rst style comments

* declare vars const and use clamp

* consolidates argmin argmax benchmarks

* fixes thrust usage

* drops offset type in arg-extrema benchmarks

* fixes clang cuda

* exec space macros

* switch to signed global offset type for slightly better perf

* clarifies documentation

* applies minor benchmark style changes from review comments

* fixes interface documentation and comments

* list-init accumulating output op

* improves style, comments, and tests

* cleans up aggregate init

* renames dispatch class usage in benchmarks

* fixes merge conflicts

* addresses review comments

* addresses review comments

* fixes assertion

* removes superseded implementation

* changes large problem tests to use new interface

* removes obsolete tests for deprecated interface

Fixes for Python 3.7 docs environment (#3206)

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Adds support for large number of items to `DeviceTransform` (#3172)

* moves large problem test helper to common file

* adds support for large num items to device transform

* adds tests for large number of items to device interface

* fixes format

* addresses review comments

cp_async_bulk: Fix test (#3198)

* memcpy_async_tx: Fix bug in test

Two bugs, one of which occurs in practice:

1. There is a missing fence.proxy.space::global between the writes to
   global memory and the memcpy_async_tx. (Occurs in practice)

2. The end of the kernel should be fenced with `__syncthreads()`,
   because the barrier is invalidated in the destructor. If other
   threads are still waiting on it, there will be UB. (Has not yet
   manifested itself)

* cp_async_bulk_tensor: Pre-emptively fence more in test

* cp_async_bulk: Fix test

The global memory pointer could be misaligned.

cudax fixes for msvc 14.41 (#3200)

avoid instantiating class templates in `is_same` implementation when possible (#3203)

Fix: make launchers a CUB detail; make kernel source functions hidden. (#3209)

* Fix: make launchers a CUB detail; make kernel source functions hidden.

* [pre-commit.ci] auto code formatting

* Address review comments, fix which macro gets fixed.

help the ranges concepts recognize standard contiguous iterators in c++14/17 (#3202)

unify macros and cmake options that control the suppression of deprecation warnings (#3220)

* unify macros and cmake options that control the suppression of deprecation warnings

* suppress nvcc warning #186 in thrust header tests

* suppress c++ dialect deprecation warnings in libcudacxx header tests

Fx thread-reduce performance regression (#3225)

cuda.parallel: In-memory caching of build objects (#3216)

* Define __eq__ and __hash__ for Iterators

* Define cache_with_key utility and use it to cache Reduce objects

* Add tests for caching Reduce objects

* Tighten up types

* Updates to support 3.7

* Address review feedback

* Introduce IteratorKind to hold iterator type information

* Use the .kind to generate an abi_name

* Remove __eq__ and __hash__ methods from IteratorBase

* Move helper function

* Formatting

* Don't unpack tuple in cache key

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Just enough ranges for c++14 `span` (#3211)

use generalized concepts portability macros to simplify the `range` concept (#3217)

fixes some issues in the concepts portability macros and then re-implements the `range` concept with `_CCCL_REQUIRES_EXPR`

Use Ruff to sort imports (#3230)

* Update pyproject.tomls for import sorting

* Update files after running pre-commit

* Move ruff config to pyproject.toml

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

fix tuning_scan sm90 config issue (#3236)

Co-authored-by: Shijie Chen <shijiec@nvidia.com>

[STF] Logical token (#3196)

* Split the implementation of the void interface into the definition of the interface, and its implementations on streams and graphs.

* Add missing files

* Check if a task implementation can match a prototype where the void_interface arguments are ignored

* Implement ctx.abstract_logical_data() which relies on a void data interface

* Illustrate how to use abstract handles in local contexts

* Introduce an is_void_interface() virtual method in the data interface to potentially optimize some stages

* Small improvements in the examples

* Do not try to allocate or move void data

* Do not use I as a variable

* fix linkage error

* rename abtract_logical_data into logical_token

* Document logical token

* fix spelling error

* fix sphinx error

* reflect name changes

* use meaningful variable names

* simplify logical_token implementation because writeback is already disabled

* add a unit test for token elision

* implement token elision in host_launch

* Remove unused type

* Implement helpers to check if a function can be invoked from a tuple, or from a tuple where we removed tokens

* Much simpler is_tuple_invocable_with_filtered implementation

* Fix buggy test

* Factorize code

* Document that we can ignore tokens for task and host_launch

* Documentation for logical data freeze

Fix ReduceByKey tuning (#3240)

Fix RLE tuning (#3239)

cuda.parallel: Forbid non-contiguous arrays as inputs (or outputs) (#3233)

* Forbid non-contiguous arrays as inputs (or outputs)

* Implement a more robust way to check for contiguity

* Don't bother if cublas unavailable

* Fix how we check for zero-element arrays

* sort imports

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

expands support for more offset types in segmented benchmark (#3231)

Add escape hatches to the cmake configuration of the header tests so that we can tests deprecated compilers / dialects (#3253)

* Add escape hatches to the cmake configuration of the header tests so that we can tests deprecated compilers / dialects

* Do not add option twice

ptx: Add add_instruction.py (#3190)

This file helps create the necessary structure for new PTX instructions.

Co-authored-by: Allard Hendriksen <ahendriksen@nvidia.com>

Bump main to 2.9.0. (#3247)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

Drop cub::Mutex (#3251)

Fixes: #3250

Remove legacy macros from CUB util_arch.cuh (#3257)

Fixes: #3256

Remove thrust::[unary|binary]_traits (#3260)

Fixes: #3259

Architecture and OS identification macros (#3237)

Bump main to 3.0.0. (#3265)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

Drop thrust not1 and not2 (#3264)

Fixes: #3263

CCCL Internal macro documentation (#3238)

Deprecate GridBarrier and GridBarrierLifetime (#3258)

Fixes: #1389

Require at least gcc7 (#3268)

Fixes: #3267

Drop thrust::[unary|binary]_function (#3274)

Fixes: #3273

Drop ICC from CI (#3277)

[STF] Corruption of the capture list of an extended lambda with a parallel_for construct on a host execution place (#3270)

* Add a test to reproduce a bug observed with parallel_for on a host place

* clang-format

* use _CCCL_ASSERT

* Attempt to debug

* do not create a tuple with a universal reference that is out of scope when we use it, use an lvalue instead

* fix lambda expression

* clang-format

Enable thrust::identity test for non-MSVC (#3281)

This seems to be an oversight when the test was added

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Enable PDL in triple chevron launch (#3282)

It seems PDL was disabled by accident when _THRUST_HAS_PDL was renamed
to _CCCL_HAS_PDL during the review introducing the feature.

Disambiguate line continuations and macro continuations in <nv/target> (#3244)

Drop VS 2017 from CI (#3287)

Fixes: #3286

Drop ICC support in code (#3279)

* Drop ICC from code

Fixes: #3278

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Make CUB NVRTC commandline arguments come from a cmake template (#3292)

Propose the same components (thrust, cub, libc++, cudax, cuda.parallel,...) in the bug report template than in the feature request template (#3295)

Use process isolation instead of default hyper-v for Windows. (#3294)

Try improving build times by using process isolation instead of hyper-v

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

[pre-commit.ci] pre-commit autoupdate (#3248)

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/pre-commit/mirrors-clang-format: v18.1.8 → v19.1.6](https://github.com/pre-commit/mirrors-clang-format/compare/v18.1.8...v19.1.6)
- [github.com/astral-sh/ruff-pre-commit: v0.8.3 → v0.8.6](https://github.com/astral-sh/ruff-pre-commit/compare/v0.8.3...v0.8.6)
- [github.com/pre-commit/mirrors-mypy: v1.13.0 → v1.14.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.13.0...v1.14.1)

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Drop Thrust legacy arch macros (#3298)

Which were disabled and could be re-enabled using THRUST_PROVIDE_LEGACY_ARCH_MACROS

Drop Thrust's compiler_fence.h (#3300)

Drop CTK 11.x from CI (#3275)

* Add cuda12.0-gcc7 devcontainer
* Move MSVC2017 jobs to CTK 12.6
Those is the only combination where rapidsai has devcontainers
* Add /Zc:__cplusplus for the libcudacxx tests
* Only add excape hatch for affected CTKs
* Workaround missing cudaLaunchKernelEx on MSVC
cudaLaunchKernelEx requires C++11, but unfortunately <cuda_runtime.h> checks this using the __cplusplus macro, which is reported wrongly for MSVC. CTK 12.3 fixed this by additionally detecting _MSV_VER. As a workaround, we provide our own copy of cudaLaunchKernelEx when it is not available from the CTK.
* Workaround nvcc+MSVC issue
* Regenerate devcontainers

Fixes: #3249

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Drop CUB's util_compiler.cuh (#3302)

All contained macros were deprecated

Update packman and repo_docs versions (#3293)

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Drop Thrust's deprecated compiler macros (#3301)

Drop CUB_RUNTIME_ENABLED and __THRUST_HAS_CUDART__ (#3305)

Adds support for large number of items to `DevicePartition::If` with the `ThreeWayPartition` overload (#2506)

* adds support for large number of items to three-way partition

* adapts interface to use choose_signed_offset_t

* integrates applicable feedback from device-select pr

* changes behavior for empty problems

* unifies grid constant macro

* fixes kernel template specialization mismatch

* integrates _CCCL_GRID_CONSTANT changes

* resolve merge conflicts

* fixes checks in test

* fixes test verification

* improves tests

* makes few improvements to streaming dispatch

* improves code comment on test

* fixes unrelated compiler error

* minor style improvements

Refactor scan tunings (#3262)

Require C++17 for compiling Thrust and CUB (#3255)

* Issue an unsuppressable warning when compiling with < C++17
* Remove C++11/14 presets
* Remove CCCL_IGNORE_DEPRECATED_CPP_DIALECT from headers
* Remove [CUB|THRUST|TCT]_IGNORE_DEPRECATED_CPP_[11|14]
* Remove CUB_ENABLE_DIALECT_CPP[11|14]
* Update CI runs
* Remove C++11/14 CI runs for CUB and Thrust
* Raise compiler minimum versions for C++17
* Update ReadMe
* Drop Thrust's cpp14_required.h
* Add escape hatch for C++17 removal

Fixes: #3252

Implement `views::empty` (#3254)

* Disable pair conversion of subrange with clang in C++17

* Fix namespace views

* Implement `views::empty`

This implements `std::ranges::views::empty`, see https://en.cppreference.com/w/cpp/ranges/empty_view

Refactor `limits` and `climits` (#3221)

* implement builtins for huge val, nan and nans

* change `INFINITY` and `NAN` implementation for NVRTC

cuda.parallel: Add documentation for the current iterators along with examples and tests (#3311)

* Add tests demonstrating usage of different iterators

* Update documentation of reduce_into by merging import code snippet with the rest of the example

* Add documentation for current iterators

* Run pre-commit checks and update accordingly

* Fix comments to refer to the proper lines in the code snippets in the docs

Drop clang<14 from CI, update devcontainers. (#3309)

Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com>

[STF] Cleanup task dependencies object constructors (#3291)

* Define tag types for access modes

* - Rework how we build task_dep objects based on access mode tags
- pack_state is now responsible for using a const_cast for read only data

* Greatly simplify the previous attempt : do not define new types, but use integral constants based on the enums

* It seems the const_cast was not necessarily so we can simplify it and not even do some dispatch based on access modes

Disable test with a gcc-14 regression (#3297)

Deprecate Thrust's cpp_compatibility.h macros (#3299)

Remove dropped function objects from docs (#3319)

Document `NV_TARGET` macros (#3313)

[STF] Define ctx.pick_stream() which was missing for the unified context (#3326)

* Define ctx.pick_stream() which was missing for the unified context

* clang-format

Deprecate cub::IterateThreadStore (#3337)

Drop CUB's BinaryFlip operator (#3332)

Deprecate cub::Swap (#3333)

Clarify transform output can overlap input (#3323)

Drop CUB APIs with a debug_synchronous parameter (#3330)

Fixes: #3329

Drop CUB's util_compiler.cuh for real (#3340)

PR #3302 planned to drop the file, but only dropped its content. This
was an oversight. So let's drop the entire file.

Drop cub::ValueCache (#3346)

limits offset types for merge sort (#3328)

Drop CDPv1 (#3344)

Fixes: #3341

Drop thrust::void_t (#3362)

Use cuda::std::addressof in Thrust (#3363)

Fix all_of documentation for empty ranges (#3358)

all_of always returns true on an empty range.

[STF] Do not keep track of dangling events in a CUDA graph backend (#3327)

* Unlike the CUDA stream backend, nodes in a CUDA graph are necessarily done when
the CUDA graph completes. Therefore keeping track of "dangling events" is a
waste of time and resources.

* replace can_ignore_dangling_events by track_dangling_events which leads to more readable code

* When not storing the dangling events, we must still perform the deinit operations that were producing these events !

Extract scan kernels into NVRTC-compilable header (#3334)

* Extract scan kernels into NVRTC-compilable header

* Update cub/cub/device/dispatch/dispatch_scan.cuh

Co-authored-by: Georgii Evtushenko <evtushenko.georgy@gmail.com>

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>
Co-authored-by: Georgii Evtushenko <evtushenko.georgy@gmail.com>

Drop deprecated aliases in Thrust functional (#3272)

Fixes: #3271

Drop cub::DivideAndRoundUp (#3347)

Use cuda::std::min/max in Thrust (#3364)

Implement `cuda::std::numeric_limits` for `__half` and `__nv_bfloat16` (#3361)

* implement `cuda::std::numeric_limits` for `__half` and `__nv_bfloat16`

Cleanup util_arch (#2773)

Deprecate thrust::null_type (#3367)

Deprecate cub::DeviceSpmv (#3320)

Fixes: #896

Improves `DeviceSegmentedSort` test run time for large number of items and segments (#3246)

* fixes segment offset generation

* switches to analytical verification

* switches to analytical verification for pairs

* fixes spelling

* adds tests for large number of segments

* fixes narrowing conversion in tests

* addresses review comments

* fixes includes

Compile basic infra test with C++17 (#3377)

Adds support for large number of items and large number of segments to `DeviceSegmentedSort` (#3308)

* fixes segment offset generation

* switches to analytical verification

* switches to analytical verification for pairs

* addresses review comments

* introduces segment offset type

* adds tests for large number of segments

* adds support for large number of segments

* drops segment offset type

* fixes thrust namespace

* removes about-to-be-deprecated cub iterators

* no exec specifier on defaulted ctor

* fixes gcc7 linker error

* uses local_segment_index_t throughout

* determine offset type based on type returned by segment iterator begin/end iterators

* minor style improvements

Exit with error when RAPIDS CI fails. (#3385)

cuda.parallel: Support structured types as algorithm inputs (#3218)

* Introduce gpu_struct decorator and typing

* Enable `reduce` to accept arrays of structs as inputs

* Add test for reducing arrays-of-struct

* Update documentation

* Use a numpy array rather than ctypes object

* Change zeros -> empty for output array and temp storage

* Add a TODO for typing GpuStruct

* Documentation udpates

* Remove test_reduce_struct_type from test_reduce.py

* Revert to `to_cccl_value()` accepting ndarray + GpuStruct

* Bump copyrights

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Deprecate thrust::async (#3324)

Fixes: #100

Review/Deprecate CUB `util.ptx` for CCCL 2.x (#3342)

Fix broken `_CCCL_BUILTIN_ASSUME` macro (#3314)

* add compiler-specific path
* fix device code path
* add _CCC_ASSUME

Deprecate thrust::numeric_limits (#3366)

Replace `typedef` with `using` in libcu++ (#3368)

Deprecate thrust::optional (#3307)

Fixes: #3306

Upgrade to Catch2 3.8  (#3310)

Fixes: #1724

refactor `<cuda/std/cstdint>` (#3325)

Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com>

Update CODEOWNERS (#3331)

* Update CODEOWNERS

* Update CODEOWNERS

* Update CODEOWNERS

* [pre-commit.ci] auto code formatting

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

Fix sign-compare warning (#3408)

Implement more cmath functions to be usable on host and device (#3382)

* Implement more cmath functions to be usable on host and device

* Implement math roots functions

* Implement exponential functions

Redefine and deprecate thrust::remove_cvref (#3394)

* Redefine and deprecate thrust::remove_cvref

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Fix assert definition for NVHPC due to constexpr issues (#3418)

NVHPC cannot decide at compile time where the code would run so _CCCL_ASSERT within a constexpr function breaks it.

Fix this by always using the host definition which should also work on device.

Fixes #3411

Extend CUB reduce benchmarks (#3401)

* Rename max.cu to custom.cu, since it uses a custom operator
* Extend types covered my min.cu to all fundamental types
* Add some notes on how to collect tuning parameters

Fixes: #3283

Update upload-pages-artifact to v3 (#3423)

* Update upload-pages-artifact to v3

* Empty commit

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Replace and deprecate thrust::cuda_cub::terminate (#3421)

`std::linalg` accessors and `transposed_layout` (#2962)

Add round up/down to multiple (#3234)

[FEA]: Introduce Python module with CCCL headers (#3201)

* Add cccl/python/cuda_cccl directory and use from cuda_parallel, cuda_cooperative

* Run `copy_cccl_headers_to_aude_include()` before `setup()`

* Create python/cuda_cccl/cuda/_include/__init__.py, then simply import cuda._include to find the include path.

* Add cuda.cccl._version exactly as for cuda.cooperative and cuda.parallel

* Bug fix: cuda/_include only exists after shutil.copytree() ran.

* Use `f"cuda-cccl @ file://{cccl_path}/python/cuda_cccl"` in setup.py

* Remove CustomBuildCommand, CustomWheelBuild in cuda_parallel/setup.py (they are equivalent to the default functions)

* Replace := operator (needs Python 3.8+)

* Fix oversights: remove `pip3 install ./cuda_cccl` lines from README.md

* Restore original README.md: `pip3 install -e` now works on first pass.

* cuda_cccl/README.md: FOR INTERNAL USE ONLY

* Remove `$pymajor.$pyminor.` prefix in cuda_cccl _version.py (as suggested under https://github.com/NVIDIA/cccl/pull/3201#discussion_r1894035917)

Command used: ci/update_version.sh 2 8 0

* Modernize pyproject.toml, setup.py

Trigger for this change:

* https://github.com/NVIDIA/cccl/pull/3201#discussion_r1894043178

* https://github.com/NVIDIA/cccl/pull/3201#discussion_r1894044996

* Install CCCL headers under cuda.cccl.include

Trigger for this change:

* https://github.com/NVIDIA/cccl/pull/3201#discussion_r1894048562

Unexpected accidental discovery: cuda.cooperative unit tests pass without CCCL headers entirely.

* Factor out cuda_cccl/cuda/cccl/include_paths.py

* Reuse cuda_cccl/cuda/cccl/include_paths.py from cuda_cooperative

* Add missing Copyright notice.

* Add missing __init__.py (cuda.cccl)

* Add `"cuda.cccl"` to `autodoc.mock_imports`

* Move cuda.cccl.include_paths into function where it is used. (Attempt to resolve Build and Verify Docs failure.)

* Add # TODO: move this to a module-level import

* Modernize cuda_cooperative/pyproject.toml, setup.py

* Convert cuda_cooperative to use hatchling as build backend.

* Revert "Convert cuda_cooperative to use hatchling as build backend."

This reverts commit 61637d608da06fcf6851ef6197f88b5e7dbc3bbe.

* Move numpy from [build-system] requires -> [project] dependencies

* Move pyproject.toml [project] dependencies -> setup.py install_requires, to be able to use CCCL_PATH

* Remove copy_license() and use license_files=["../../LICENSE"] instead.

* Further modernize cuda_cccl/setup.py to use pathlib

* Trivial simplifications in cuda_cccl/pyproject.toml

* Further simplify cuda_cccl/pyproject.toml, setup.py: remove inconsequential code

* Make cuda_cooperative/pyproject.toml more similar to cuda_cccl/pyproject.toml

* Add taplo-pre-commit to .pre-commit-config.yaml

* taplo-pre-commit auto-fixes

* Use pathlib in cuda_cooperative/setup.py

* CCCL_PYTHON_PATH in cuda_cooperative/setup.py

* Modernize cuda_parallel/pyproject.toml, setup.py

* Use pathlib in cuda_parallel/setup.py

* Add `# TOML lint & format` comment.

* Replace MANIFEST.in with `[tool.setuptools.package-data]` section in pyproject.toml

* Use pathlib in cuda/cccl/include_paths.py

* pre-commit autoupdate (EXCEPT clang-format, which was manually restored)

* Fixes after git merge main

* Resolve warning: AttributeError: '_Reduce' object has no attribute 'build_result'

```
=========================================================================== warnings summary ===========================================================================
tests/test_reduce.py::test_reduce_non_contiguous
  /home/coder/cccl/python/devenv/lib/python3.12/site-packages/_pytest/unraisableexception.py:85: PytestUnraisableExceptionWarning: Exception ignored in: <function _Reduce.__del__ at 0x7bf123139080>

  Traceback (most recent call last):
    File "/home/coder/cccl/python/cuda_parallel/cuda/parallel/experimental/algorithms/reduce.py", line 132, in __del__
      bindings.cccl_device_reduce_cleanup(ctypes.byref(self.build_result))
                                                       ^^^^^^^^^^^^^^^^^
  AttributeError: '_Reduce' object has no attribute 'build_result'

    warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
============================================================= 1 passed, 93 deselected, 1 warning in 0.44s ==============================================================
```

* Move `copy_cccl_headers_to_cuda_cccl_include()` functionality to `class CustomBuildPy`

* Introduce cuda_cooperative/constraints.txt

* Also add cuda_parallel/constraints.txt

* Add `--constraint constraints.txt` in ci/test_python.sh

* Update Copyright dates

* Switch to https://github.com/ComPWA/taplo-pre-commit (the other repo has been archived by the owner on Jul 1, 2024)

For completeness: The other repo took a long time to install into the pre-commit cache; so long it lead to timeouts in the CCCL CI.

* Remove unused cuda_parallel jinja2 dependency (noticed by chance).

* Remove constraints.txt files, advertise running `pip install cuda-cccl` first instead.

* Make cuda_cooperative, cuda_parallel testing completely independent.

* Run only test_python.sh [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Try using another runner (because V100 runners seem to be stuck) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Fix sign-compare warning (#3408) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Revert "Try using another runner (because V100 runners seem to be stuck) [skip-rapids][skip-matx][skip-docs][skip-vdc]"

This reverts commit ea33a218ed77a075156cd1b332047202adb25aa2.

Error message: https://github.com/NVIDIA/cccl/pull/3201#issuecomment-2594012971

* Try using A100 runner (because V100 runners still seem to be stuck) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Also show cuda-cooperative site-packages, cuda-parallel site-packages (after pip install) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Try using l4 runner (because V100 runners still seem to be stuck) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Restore original ci/matrix.yaml [skip-rapids]

* Use for loop in test_python.sh to avoid code duplication.

* Run only test_python.sh [skip-rapids][skip-matx][skip-docs][skip-vdc][skip pre-commit.ci]

* Comment out taplo-lint in pre-commit config [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Revert "Run only test_python.sh [skip-rapids][skip-matx][skip-docs][skip-vdc][skip pre-commit.ci]"

This reverts commit ec206fd8b50a6a293e00a5825b579e125010b13d.

* Implement suggestion by @shwina (https://github.com/NVIDIA/cccl/pull/3201#pullrequestreview-2556918460)

* Address feedback by @leofang

---------

Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com>

cuda.parallel: Add optional stream argument to reduce_into() (#3348)

* Add optional stream argument to reduce_into()

* Add tests to check for reduce_into() stream behavior

* Move protocol related utils to separate file and rework __cuda_stream__ error messages

* Fix synchronization issue in stream test and add one more invalid stream test case

* Rename cuda stream validation function after removing leading underscore

* Unpack values from __cuda_stream__ instead of indexing

* Fix linting errors

* Handle TypeError when unpacking invalid __cuda_stream__ return

* Use stream to allocate cupy memory in new stream test

Upgrade to actions/deploy-pages@v4 (from v2), as suggested by @leofang (#3434)

Deprecate `cub::{min, max}` and replace internal uses with those from libcu++ (#3419)

* Deprecate `cub::{min, max}` and replace internal uses with those from libcu++

Fixes #3404

move to c++17, finalize device optimization

fix msvc compilation, update tests

Deprectate C++11 and C++14 for libcu++ (#3173)

* Deprectate C++11 and C++14 for libcu++

Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com>

Implement `abs` and `div` from `cstdlib` (#3153)

* implement integer abs functions
* improve tests, fix constexpr support
* just use the our implementation
* implement `cuda::std::div`
* prefer host's `div_t` like types
* provide `cuda::std::abs` overloads for floats
* allow fp abs for NVRTC
* silence msvc's warning about conversion from floating point to integral

Fix missing radix sort policies (#3174)

Fixes NVBug 5009941

Introduces new `DeviceReduce::Arg{Min,Max}` interface with two output iterators (#3148)

* introduces new arg{min,max} interface with two output iterators

* adds fp inf tests

* fixes docs

* improves code example

* fixes exec space specifier

* trying to fix deprecation warning for more compilers

* inlines unzip operator

* trying to fix deprecation warning for nvhpc

* integrates supression fixes in diagnostics

* pre-ctk 11.5 deprecation suppression

* fixes icc

* fix for pre-ctk11.5

* cleans up deprecation suppression

* cleanup

Extend tuning documentation (#3179)

Add codespell pre-commit hook, fix typos in CCCL (#3168)

* Add codespell pre-commit hook
* Automatic changes from codespell.
* Manual changes.

Fix parameter space for TUNE_LOAD in scan benchmark (#3176)

fix various old compiler checks (#3178)

implement C++26 `std::projected` (#3175)

Fix pre-commit config for codespell and remaining typos (#3182)

Massive cleanup of our config (#3155)

Fix UB in atomics with automatic storage (#2586)

* Adds specialized local cuda atomics and injects them into most atomics paths.

Co-authored-by: Georgy Evtushenko <evtushenko.georgy@gmail.com>
Co-authored-by: gonzalobg <65027571+gonzalobg@users.noreply.github.com>

* Allow CUDA 12.2 to keep perf, this addresses earlier comments in #478

* Remove extraneous double brackets in unformatted code.

* Merge unsafe atomic logic into `__cuda_is_local`.

* Use `const_cast` for type conversions in cuda_local.h

* Fix build issues from interface changes

* Fix missing __nanosleep on sm70-

* Guard __isLocal from NVHPC

* Use PTX instead of running nothing from NVHPC

* fixup /s/nvrtc/nvhpc

* Fixup missing CUDA ifdef surrounding device code

* Fix codegen

* Bypass some sort of compiler bug on GCC7

* Apply suggestions from code review

* Use unsafe automatic storage atomics in codegen tests

---------

Co-authored-by: Georgy Evtushenko <evtushenko.georgy@gmail.com>
Co-authored-by: gonzalobg <65027571+gonzalobg@users.noreply.github.com>
Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Refactor the source code layout for `cuda.parallel` (#3177)

* Refactor the source layout for cuda.parallel

* Add copyright

* Address review feedback

* Don't import anything into `experimental` namespace

* fix import

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

new type-erased memory resources (#2824)

s/_LIBCUDACXX_DECLSPEC_EMPTY_BASES/_CCCL_DECLSPEC_EMPTY_BASES/g (#3186)

Document address stability of `thrust::transform` (#3181)

* Do not document _LIBCUDACXX_MARK_CAN_COPY_ARGUMENTS
* Reformat and fix UnaryFunction/BinaryFunction in transform docs
* Mention transform can use proclaim_copyable_arguments
* Document cuda::proclaims_copyable_arguments better
* Deprecate depending on transform functor argument addresses

Fixes: #3053

turn off cuda version check for clangd (#3194)

[STF] jacobi example based on parallel_for (#3187)

* Simple jacobi example with parallel for and reductions

* clang-format

* remove useless capture list

fixes pre-nv_diag suppression issues (#3189)

Prefer c2h::type_name over c2h::demangle (#3195)

Fix memcpy_async* tests (#3197)

* memcpy_async_tx: Fix bug in test

Two bugs, one of which occurs in practice:

1. There is a missing fence.proxy.space::global between the writes to
   global memory and the memcpy_async_tx. (Occurs in practice)

2. The end of the kernel should be fenced with `__syncthreads()`,
   because the barrier is invalidated in the destructor. If other
   threads are still waiting on it, there will be UB. (Has not yet
   manifested itself)

* cp_async_bulk_tensor: Pre-emptively fence more in test

Add type annotations and mypy checks for `cuda.parallel`  (#3180)

* Refactor the source layout for cuda.parallel

* Add initial type annotations

* Update pre-commit config

* More typing

* Fix bad merge

* Fix TYPE_CHECKING and numpy annotations

* typing bindings.py correctly

* Address review feedback

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Fix rendering of cuda.parallel docs (#3192)

* Fix pre-commit config for codespell and remaining typos

* Fix rendering of docs for cuda.parallel

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Enable PDL for DeviceMergeSortBlockSortKernel (#3199)

The kernel already contains a call to _CCCL_PDL_GRID_DEPENDENCY_SYNC.
This commit enables PDL when launching the kernel.

Adds support for large `num_items` to `DeviceReduce::{ArgMin,ArgMax}` (#2647)

* adds benchmarks for reduce::arg{min,max}

* preliminary streaming arg-extremum reduction

* fixes implicit conversion

* uses streaming dispatch class

* changes arg benches to use new streaming reduce

* streaming arg-extrema reduction

* fixes style

* fixes compilation failures

* cleanups

* adds rst style comments

* declare vars const and use clamp

* consolidates argmin argmax benchmarks

* fixes thrust usage

* drops offset type in arg-extrema benchmarks

* fixes clang cuda

* exec space macros

* switch to signed global offset type for slightly better perf

* clarifies documentation

* applies minor benchmark style changes from review comments

* fixes interface documentation and comments

* list-init accumulating output op

* improves style, comments, and tests

* cleans up aggregate init

* renames dispatch class usage in benchmarks

* fixes merge conflicts

* addresses review comments

* addresses review comments

* fixes assertion

* removes superseded implementation

* changes large problem tests to use new interface

* removes obsolete tests for deprecated interface

Fixes for Python 3.7 docs environment (#3206)

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Adds support for large number of items to `DeviceTransform` (#3172)

* moves large problem test helper to common file

* adds support for large num items to device transform

* adds tests for large number of items to device interface

* fixes format

* addresses review comments

cp_async_bulk: Fix test (#3198)

* memcpy_async_tx: Fix bug in test

Two bugs, one of which occurs in practice:

1. There is a missing fence.proxy.space::global between the writes to
   global memory and the memcpy_async_tx. (Occurs in practice)

2. The end of the kernel should be fenced with `__syncthreads()`,
   because the barrier is invalidated in the destructor. If other
   threads are still waiting on it, there will be UB. (Has not yet
   manifested itself)

* cp_async_bulk_tensor: Pre-emptively fence more in test

* cp_async_bulk: Fix test

The global memory pointer could be misaligned.

cudax fixes for msvc 14.41 (#3200)

avoid instantiating class templates in `is_same` implementation when possible (#3203)

Fix: make launchers a CUB detail; make kernel source functions hidden. (#3209)

* Fix: make launchers a CUB detail; make kernel source functions hidden.

* [pre-commit.ci] auto code formatting

* Address review comments, fix which macro gets fixed.

help the ranges concepts recognize standard contiguous iterators in c++14/17 (#3202)

unify macros and cmake options that control the suppression of deprecation warnings (#3220)

* unify macros and cmake options that control the suppression of deprecation warnings

* suppress nvcc warning #186 in thrust header tests

* suppress c++ dialect deprecation warnings in libcudacxx header tests

Fx thread-reduce performance regression (#3225)

cuda.parallel: In-memory caching of build objects (#3216)

* Define __eq__ and __hash__ for Iterators

* Define cache_with_key utility and use it to cache Reduce objects

* Add tests for caching Reduce objects

* Tighten up types

* Updates to support 3.7

* Address review feedback

* Introduce IteratorKind to hold iterator type information

* Use the .kind to generate an abi_name

* Remove __eq__ and __hash__ methods from IteratorBase

* Move helper function

* Formatting

* Don't unpack tuple in cache key

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Just enough ranges for c++14 `span` (#3211)

use generalized concepts portability macros to simplify the `range` concept (#3217)

fixes some issues in the concepts portability macros and then re-implements the `range` concept with `_CCCL_REQUIRES_EXPR`

Use Ruff to sort imports (#3230)

* Update pyproject.tomls for import sorting

* Update files after running pre-commit

* Move ruff config to pyproject.toml

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

fix tuning_scan sm90 config issue (#3236)

Co-authored-by: Shijie Chen <shijiec@nvidia.com>

[STF] Logical token (#3196)

* Split the implementation of the void interface into the definition of the interface, and its implementations on streams and graphs.

* Add missing files

* Check if a task implementation can match a prototype where the void_interface arguments are ignored

* Implement ctx.abstract_logical_data() which relies on a void data interface

* Illustrate how to use abstract handles in local contexts

* Introduce an is_void_interface() virtual method in the data interface to potentially optimize some stages

* Small improvements in the examples

* Do not try to allocate or move void data

* Do not use I as a variable

* fix linkage error

* rename abtract_logical_data into logical_token

* Document logical token

* fix spelling error

* fix sphinx error

* reflect name changes

* use meaningful variable names

* simplify logical_token implementation because writeback is already disabled

* add a unit test for token elision

* implement token elision in host_launch

* Remove unused type

* Implement helpers to check if a function can be invoked from a tuple, or from a tuple where we removed tokens

* Much simpler is_tuple_invocable_with_filtered implementation

* Fix buggy test

* Factorize code

* Document that we can ignore tokens for task and host_launch

* Documentation for logical data freeze

Fix ReduceByKey tuning (#3240)

Fix RLE tuning (#3239)

cuda.parallel: Forbid non-contiguous arrays as inputs (or outputs) (#3233)

* Forbid non-contiguous arrays as inputs (or outputs)

* Implement a more robust way to check for contiguity

* Don't bother if cublas unavailable

* Fix how we check for zero-element arrays

* sort imports

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

expands support for more offset types in segmented benchmark (#3231)

Add escape hatches to the cmake configuration of the header tests so that we can tests deprecated compilers / dialects (#3253)

* Add escape hatches to the cmake configuration of the header tests so that we can tests deprecated compilers / dialects

* Do not add option twice

ptx: Add add_instruction.py (#3190)

This file helps create the necessary structure for new PTX instructions.

Co-authored-by: Allard Hendriksen <ahendriksen@nvidia.com>

Bump main to 2.9.0. (#3247)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

Drop cub::Mutex (#3251)

Fixes: #3250

Remove legacy macros from CUB util_arch.cuh (#3257)

Fixes: #3256

Remove thrust::[unary|binary]_traits (#3260)

Fixes: #3259

Architecture and OS identification macros (#3237)

Bump main to 3.0.0. (#3265)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

Drop thrust not1 and not2 (#3264)

Fixes: #3263

CCCL Internal macro documentation (#3238)

Deprecate GridBarrier and GridBarrierLifetime (#3258)

Fixes: #1389

Require at least gcc7 (#3268)

Fixes: #3267

Drop thrust::[unary|binary]_function (#3274)

Fixes: #3273

Drop ICC from CI (#3277)

[STF] Corruption of the capture list of an extended lambda with a parallel_for construct on a host execution place (#3270)

* Add a test to reproduce a bug observed with parallel_for on a host place

* clang-format

* use _CCCL_ASSERT

* Attempt to debug

* do not create a tuple with a universal reference that is out of scope when we use it, use an lvalue instead

* fix lambda expression

* clang-format

Enable thrust::identity test for non-MSVC (#3281)

This seems to be an oversight when the test was added

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Enable PDL in triple chevron launch (#3282)

It seems PDL was disabled by accident when _THRUST_HAS_PDL was renamed
to _CCCL_HAS_PDL during the review introducing the feature.

Disambiguate line continuations and macro continuations in <nv/target> (#3244)

Drop VS 2017 from CI (#3287)

Fixes: #3286

Drop ICC support in code (#3279)

* Drop ICC from code

Fixes: #3278

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Make CUB NVRTC commandline arguments come from a cmake template (#3292)

Propose the same components (thrust, cub, libc++, cudax, cuda.parallel,...) in the bug report template than in the feature request template (#3295)

Use process isolation instead of default hyper-v for Windows. (#3294)

Try improving build times by using process isolation instead of hyper-v

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

[pre-commit.ci] pre-commit autoupdate (#3248)

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/pre-commit/mirrors-clang-format: v18.1.8 → v19.1.6](https://github.com/pre-commit/mirrors-clang-format/compare/v18.1.8...v19.1.6)
- [github.com/astral-sh/ruff-pre-commit: v0.8.3 → v0.8.6](https://github.com/astral-sh/ruff-pre-commit/compare/v0.8.3...v0.8.6)
- [github.com/pre-commit/mirrors-mypy: v1.13.0 → v1.14.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.13.0...v1.14.1)

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Drop Thrust legacy arch macros (#3298)

Which were disabled and could be re-enabled using THRUST_PROVIDE_LEGACY_ARCH_MACROS

Drop Thrust's compiler_fence.h (#3300)

Drop CTK 11.x from CI (#3275)

* Add cuda12.0-gcc7 devcontainer
* Move MSVC2017 jobs to CTK 12.6
Those is the only combination where rapidsai has devcontainers
* Add /Zc:__cplusplus for the libcudacxx tests
* Only add excape hatch for affected CTKs
* Workaround missing cudaLaunchKernelEx on MSVC
cudaLaunchKernelEx requires C++11, but unfortunately <cuda_runtime.h> checks this using the __cplusplus macro, which is reported wrongly for MSVC. CTK 12.3 fixed this by additionally detecting _MSV_VER. As a workaround, we provide our own copy of cudaLaunchKernelEx when it is not available from the CTK.
* Workaround nvcc+MSVC issue
* Regenerate devcontainers

Fixes: #3249

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Update packman and repo_docs versions (#3293)

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Drop Thrust's deprecated compiler macros (#3301)

Drop CUB_RUNTIME_ENABLED and __THRUST_HAS_CUDART__ (#3305)

Adds support for large number of items to `DevicePartition::If` with the `ThreeWayPartition` overload (#2506)

* adds support for large number of items to three-way partition

* adapts interface to use choose_signed_offset_t

* integrates applicable feedback from device-select pr

* changes behavior for empty problems

* unifies grid constant macro

* fixes kernel template specialization mismatch

* integrates _CCCL_GRID_CONSTANT changes

* resolve merge conflicts

* fixes checks in test

* fixes test verification

* improves tests

* makes few improvements to streaming dispatch

* improves code comment on test

* fixes unrelated compiler error

* minor style improvements

Refactor scan tunings (#3262)

Require C++17 for compiling Thrust and CUB (#3255)

* Issue an unsuppressable warning when compiling with < C++17
* Remove C++11/14 presets
* Remove CCCL_IGNORE_DEPRECATED_CPP_DIALECT from headers
* Remove [CUB|THRUST|TCT]_IGNORE_DEPRECATED_CPP_[11|14]
* Remove CUB_ENABLE_DIALECT_CPP[11|14]
* Update CI runs
* Remove C++11/14 CI runs for CUB and Thrust
* Raise compiler minimum versions for C++17
* Update ReadMe
* Drop Thrust's cpp14_required.h
* Add escape hatch for C++17 removal

Fixes: #3252

Implement `views::empty` (#3254)

* Disable pair conversion of subrange with clang in C++17

* Fix namespace views

* Implement `views::empty`

This implements `std::ranges::views::empty`, see https://en.cppreference.com/w/cpp/ranges/empty_view

Refactor `limits` and `climits` (#3221)

* implement builtins for huge val, nan and nans

* change `INFINITY` and `NAN` implementation for NVRTC

cuda.parallel: Add documentation for the current iterators along with examples and tests (#3311)

* Add tests demonstrating usage of different iterators

* Update documentation of reduce_into by merging import code snippet with the rest of the example

* Add documentation for current iterators

* Run pre-commit checks and update accordingly

* Fix comments to refer to the proper lines in the code snippets in the docs

Drop clang<14 from CI, update devcontainers. (#3309)

Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com>

[STF] Cleanup task dependencies object constructors (#3291)

* Define tag types for access modes

* - Rework how we build task_dep objects based on access mode tags
- pack_state is now responsible for using a const_cast for read only data

* Greatly simplify the previous attempt : do not define new types, but use integral constants based on the enums

* It seems the const_cast was not necessarily so we can simplify it and not even do some dispatch based on access modes

Disable test with a gcc-14 regression (#3297)

Deprecate Thrust's cpp_compatibility.h macros (#3299)

Remove dropped function objects from docs (#3319)

Document `NV_TARGET` macros (#3313)

[STF] Define ctx.pick_stream() which was missing for the unified context (#3326)

* Define ctx.pick_stream() which was missing for the unified context

* clang-format

Deprecate cub::IterateThreadStore (#3337)

Drop CUB's BinaryFlip operator (#3332)

Deprecate cub::Swap (#3333)

Clarify transform output can overlap input (#3323)

Drop CUB APIs with a debug_synchronous parameter (#3330)

Fixes: #3329

Drop CUB's util_compiler.cuh for real (#3340)

PR #3302 planned to drop the file, but only dropped its content. This
was an oversight. So let's drop the entire file.

Drop cub::ValueCache (#3346)

limits offset types for merge sort (#3328)

Drop CDPv1 (#3344)

Fixes: #3341

Drop thrust::void_t (#3362)

Use cuda::std::addressof in Thrust (#3363)

Fix all_of documentation for empty ranges (#3358)

all_of always returns true on an empty range.

[STF] Do not keep track of dangling events in a CUDA graph backend (#3327)

* Unlike the CUDA stream backend, nodes in a CUDA graph are necessarily done when
the CUDA graph completes. Therefore keeping track of "dangling events" is a
waste of time and resources.

* replace can_ignore_dangling_events by track_dangling_events which leads to more readable code

* When not storing the dangling events, we must still perform the deinit operations that were producing these events !

Extract scan kernels into NVRTC-compilable header (#3334)

* Extract scan kernels into NVRTC-compilable header

* Update cub/cub/device/dispatch/dispatch_scan.cuh

Co-authored-by: Georgii Evtushenko <evtushenko.georgy@gmail.com>

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>
Co-authored-by: Georgii Evtushenko <evtushenko.georgy@gmail.com>

Drop deprecated aliases in Thrust functional (#3272)

Fixes: #3271

Drop cub::DivideAndRoundUp (#3347)

Use cuda::std::min/max in Thrust (#3364)

Implement `cuda::std::numeric_limits` for `__half` and `__nv_bfloat16` (#3361)

* implement `cuda::std::numeric_limits` for `__half` and `__nv_bfloat16`

Cleanup util_arch (#2773)

Deprecate thrust::null_type (#3367)

Deprecate cub::DeviceSpmv (#3320)

Fixes: #896

Improves `DeviceSegmentedSort` test run time for large number of items and segments (#3246)

* fixes segment offset generation

* switches to analytical verification

* switches to analytical verification for pairs

* fixes spelling

* adds tests for large number of segments

* fixes narrowing conversion in tests

* addresses review comments

* fixes includes

Compile basic infra test with C++17 (#3377)

Adds support for large number of items and large number of segments to `DeviceSegmentedSort` (#3308)

* fixes segment offset generation

* switches to analytical verification

* switches to analytical verification for pairs

* addresses review comments

* introduces segment offset type

* adds tests for large number of segments

* adds support for large number of segments

* drops segment offset type

* fixes thrust namespace

* removes about-to-be-deprecated cub iterators

* no exec specifier on defaulted ctor

* fixes gcc7 linker error

* uses local_segment_index_t throughout

* determine offset type based on type returned by segment iterator begin/end iterators

* minor style improvements

Exit with error when RAPIDS CI fails. (#3385)

cuda.parallel: Support structured types as algorithm inputs (#3218)

* Introduce gpu_struct decorator and typing

* Enable `reduce` to accept arrays of structs as inputs

* Add test for reducing arrays-of-struct

* Update documentation

* Use a numpy array rather than ctypes object

* Change zeros -> empty for output array and temp storage

* Add a TODO for typing GpuStruct

* Documentation udpates

* Remove test_reduce_struct_type from test_reduce.py

* Revert to `to_cccl_value()` accepting ndarray + GpuStruct

* Bump copyrights

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Deprecate thrust::async (#3324)

Fixes: #100

Review/Deprecate CUB `util.ptx` for CCCL 2.x (#3342)

Fix broken `_CCCL_BUILTIN_ASSUME` macro (#3314)

* add compiler-specific path
* fix device code path
* add _CCC_ASSUME

Deprecate thrust::numeric_limits (#3366)

Replace `typedef` with `using` in libcu++ (#3368)

Deprecate thrust::optional (#3307)

Fixes: #3306

Upgrade to Catch2 3.8  (#3310)

Fixes: #1724

refactor `<cuda/std/cstdint>` (#3325)

Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com>

Update CODEOWNERS (#3331)

* Update CODEOWNERS

* Update CODEOWNERS

* Update CODEOWNERS

* [pre-commit.ci] auto code formatting

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

Fix sign-compare warning (#3408)

Implement more cmath functions to be usable on host and device (#3382)

* Implement more cmath functions to be usable on host and device

* Implement math roots functions

* Implement exponential functions

Redefine and deprecate thrust::remove_cvref (#3394)

* Redefine and deprecate thrust::remove_cvref

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Fix assert definition for NVHPC due to constexpr issues (#3418)

NVHPC cannot decide at compile time where the code would run so _CCCL_ASSERT within a constexpr function breaks it.

Fix this by always using the host definition which should also work on device.

Fixes #3411

Extend CUB reduce benchmarks (#3401)

* Rename max.cu to custom.cu, since it uses a custom operator
* Extend types covered my min.cu to all fundamental types
* Add some notes on how to collect tuning parameters

Fixes: #3283

Update upload-pages-artifact to v3 (#3423)

* Update upload-pages-artifact to v3

* Empty commit

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Replace and deprecate thrust::cuda_cub::terminate (#3421)

`std::linalg` accessors and `transposed_layout` (#2962)

Add round up/down to multiple (#3234)

[FEA]: Introduce Python module with CCCL headers (#3201)

* Add cccl/python/cuda_cccl directory and use from cuda_parallel, cuda_cooperative

* Run `copy_cccl_headers_to_aude_include()` before `setup()`

* Create python/cuda_cccl/cuda/_include/__init__.py, then simply import cuda._include to find the include path.

* Add cuda.cccl._version exactly as for cuda.cooperative and cuda.parallel

* Bug fix: cuda/_include only exists after shutil.copytree() ran.

* Use `f"cuda-cccl @ file://{cccl_path}/python/cuda_cccl"` in setup.py

* Remove CustomBuildCommand, CustomWheelBuild in cuda_parallel/setup.py (they are equivalent to the default functions)

* Replace := operator (needs Python 3.8+)

* Fix oversights: remove `pip3 install ./cuda_cccl` lines from README.md

* Restore original README.md: `pip3 install -e` now works on first pass.

* cuda_cccl/README.md: FOR INTERNAL USE ONLY

* Remove `$pymajor.$pyminor.` prefix in cuda_cccl _version.py (as suggested under https://github.com/NVIDIA/cccl/pull/3201#discussion_r1894035917)

Command used: ci/update_version.sh 2 8 0

* Modernize pyproject.toml, setup.py

Trigger for this change:

* https://github.com/NVIDIA/cccl/pull/3201#discussion_r1894043178

* https://github.com/NVIDIA/cccl/pull/3201#discussion_r1894044996

* Install CCCL headers under cuda.cccl.include

Trigger for this change:

* https://github.com/NVIDIA/cccl/pull/3201#discussion_r1894048562

Unexpected accidental discovery: cuda.cooperative unit tests pass without CCCL headers entirely.

* Factor out cuda_cccl/cuda/cccl/include_paths.py

* Reuse cuda_cccl/cuda/cccl/include_paths.py from cuda_cooperative

* Add missing Copyright notice.

* Add missing __init__.py (cuda.cccl)

* Add `"cuda.cccl"` to `autodoc.mock_imports`

* Move cuda.cccl.include_paths into function where it is used. (Attempt to resolve Build and Verify Docs failure.)

* Add # TODO: move this to a module-level import

* Modernize cuda_cooperative/pyproject.toml, setup.py

* Convert cuda_cooperative to use hatchling as build backend.

* Revert "Convert cuda_cooperative to use hatchling as build backend."

This reverts commit 61637d608da06fcf6851ef6197f88b5e7dbc3bbe.

* Move numpy from [build-system] requires -> [project] dependencies

* Move pyproject.toml [project] dependencies -> setup.py install_requires, to be able to use CCCL_PATH

* Remove copy_license() and use license_files=["../../LICENSE"] instead.

* Further modernize cuda_cccl/setup.py to use pathlib

* Trivial simplifications in cuda_cccl/pyproject.toml

* Further simplify cuda_cccl/pyproject.toml, setup.py: remove inconsequential code

* Make cuda_cooperative/pyproject.toml more similar to cuda_cccl/pyproject.toml

* Add taplo-pre-commit to .pre-commit-config.yaml

* taplo-pre-commit auto-fixes

* Use pathlib in cuda_cooperative/setup.py

* CCCL_PYTHON_PATH in cuda_cooperative/setup.py

* Modernize cuda_parallel/pyproject.toml, setup.py

* Use pathlib in cuda_parallel/setup.py

* Add `# TOML lint & format` comment.

* Replace MANIFEST.in with `[tool.setuptools.package-data]` section in pyproject.toml

* Use pathlib in cuda/cccl/include_paths.py

* pre-commit autoupdate (EXCEPT clang-format, which was manually restored)

* Fixes after git merge main

* Resolve warning: AttributeError: '_Reduce' object has no attribute 'build_result'

```
=========================================================================== warnings summary ===========================================================================
tests/test_reduce.py::test_reduce_non_contiguous
  /home/coder/cccl/python/devenv/lib/python3.12/site-packages/_pytest/unraisableexception.py:85: PytestUnraisableExceptionWarning: Exception ignored in: <function _Reduce.__del__ at 0x7bf123139080>

  Traceback (most recent call last):
    File "/home/coder/cccl/python/cuda_parallel/cuda/parallel/experimental/algorithms/reduce.py", line 132, in __del__
      bindings.cccl_device_reduce_cleanup(ctypes.byref(self.build_result))
                                                       ^^^^^^^^^^^^^^^^^
  AttributeError: '_Reduce' object has no attribute 'build_result'

    warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
============================================================= 1 passed, 93 deselected, 1 warning in 0.44s ==============================================================
```

* Move `copy_cccl_headers_to_cuda_cccl_include()` functionality to `class CustomBuildPy`

* Introduce cuda_cooperative/constraints.txt

* Also add cuda_parallel/constraints.txt

* Add `--constraint constraints.txt` in ci/test_python.sh

* Update Copyright dates

* Switch to https://github.com/ComPWA/taplo-pre-commit (the other repo has been archived by the owner on Jul 1, 2024)

For completeness: The other repo took a long time to install into the pre-commit cache; so long it lead to timeouts in the CCCL CI.

* Remove unused cuda_parallel jinja2 dependency (noticed by chance).

* Remove constraints.txt files, advertise running `pip install cuda-cccl` first instead.

* Make cuda_cooperative, cuda_parallel testing completely independent.

* Run only test_python.sh [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Try using another runner (because V100 runners seem to be stuck) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Fix sign-compare warning (#3408) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Revert "Try using another runner (because V100 runners seem to be stuck) [skip-rapids][skip-matx][skip-docs][skip-vdc]"

This reverts commit ea33a218ed77a075156cd1b332047202adb25aa2.

Error message: https://github.com/NVIDIA/cccl/pull/3201#issuecomment-2594012971

* Try using A100 runner (because V100 runners still seem to be stuck) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Also show cuda-cooperative site-packages, cuda-parallel site-packages (after pip install) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Try using l4 runner (because V100 runners still seem to be stuck) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Restore original ci/matrix.yaml [skip-rapids]

* Use for loop in test_python.sh to avoid code duplication.

* Run only test_python.sh [skip-rapids][skip-matx][skip-docs][skip-vdc][skip pre-commit.ci]

* Comment out taplo-lint in pre-commit config [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Revert "Run only test_python.sh [skip-rapids][skip-matx][skip-docs][skip-vdc][skip pre-commit.ci]"

This reverts commit ec206fd8b50a6a293e00a5825b579e125010b13d.

* Implement suggestion by @shwina (https://github.com/NVIDIA/cccl/pull/3201#pullrequestreview-2556918460)

* Address feedback by @leofang

---------

Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com>

cuda.parallel: Add optional stream argument to reduce_into() (#3348)

* Add optional stream argument to reduce_into()

* Add tests to check for reduce_into() stream behavior

* Move protocol related utils to separate file and rework __cuda_stream__ error messages

* Fix synchronization issue in stream test and add one more invalid stream test case

* Rename cuda stream validation function after removing leading underscore

* Unpack values from __cuda_stream__ instead of indexing

* Fix linting errors

* Handle TypeError when unpacking invalid __cuda_stream__ return

* Use stream to allocate cupy memory in new stream test

Upgrade to actions/deploy-pages@v4 (from v2), as suggested by @leofang (#3434)

Deprecate `cub::{min, max}` and replace internal uses with those from libcu++ (#3419)

* Deprecate `cub::{min, max}` and replace internal uses with those from libcu++

Fixes #3404

Fix CI issues (#3443)

update docs

fix review

restrict allowed types

replace constexpr implementations with generic

optimize `__is_arithmetic_integral`
davebayer pushed a commit to davebayer/cccl that referenced this pull request Jan 22, 2025
davebayer added a commit to davebayer/cccl that referenced this pull request Jan 22, 2025
update docs

update docs

add `memcmp`, `memmove` and `memchr` implementations

implement tests

Use cuda::std::min/max in Thrust (NVIDIA#3364)

Implement `cuda::std::numeric_limits` for `__half` and `__nv_bfloat16` (NVIDIA#3361)

* implement `cuda::std::numeric_limits` for `__half` and `__nv_bfloat16`

Cleanup util_arch (NVIDIA#2773)

Deprecate thrust::null_type (NVIDIA#3367)

Deprecate cub::DeviceSpmv (NVIDIA#3320)

Fixes: NVIDIA#896

Improves `DeviceSegmentedSort` test run time for large number of items and segments (NVIDIA#3246)

* fixes segment offset generation

* switches to analytical verification

* switches to analytical verification for pairs

* fixes spelling

* adds tests for large number of segments

* fixes narrowing conversion in tests

* addresses review comments

* fixes includes

Compile basic infra test with C++17 (NVIDIA#3377)

Adds support for large number of items and large number of segments to `DeviceSegmentedSort` (NVIDIA#3308)

* fixes segment offset generation

* switches to analytical verification

* switches to analytical verification for pairs

* addresses review comments

* introduces segment offset type

* adds tests for large number of segments

* adds support for large number of segments

* drops segment offset type

* fixes thrust namespace

* removes about-to-be-deprecated cub iterators

* no exec specifier on defaulted ctor

* fixes gcc7 linker error

* uses local_segment_index_t throughout

* determine offset type based on type returned by segment iterator begin/end iterators

* minor style improvements

Exit with error when RAPIDS CI fails. (NVIDIA#3385)

cuda.parallel: Support structured types as algorithm inputs (NVIDIA#3218)

* Introduce gpu_struct decorator and typing

* Enable `reduce` to accept arrays of structs as inputs

* Add test for reducing arrays-of-struct

* Update documentation

* Use a numpy array rather than ctypes object

* Change zeros -> empty for output array and temp storage

* Add a TODO for typing GpuStruct

* Documentation udpates

* Remove test_reduce_struct_type from test_reduce.py

* Revert to `to_cccl_value()` accepting ndarray + GpuStruct

* Bump copyrights

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Deprecate thrust::async (NVIDIA#3324)

Fixes: NVIDIA#100

Review/Deprecate CUB `util.ptx` for CCCL 2.x (NVIDIA#3342)

Fix broken `_CCCL_BUILTIN_ASSUME` macro (NVIDIA#3314)

* add compiler-specific path
* fix device code path
* add _CCC_ASSUME

Deprecate thrust::numeric_limits (NVIDIA#3366)

Replace `typedef` with `using` in libcu++ (NVIDIA#3368)

Deprecate thrust::optional (NVIDIA#3307)

Fixes: NVIDIA#3306

Upgrade to Catch2 3.8  (NVIDIA#3310)

Fixes: NVIDIA#1724

refactor `<cuda/std/cstdint>` (NVIDIA#3325)

Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com>

Update CODEOWNERS (NVIDIA#3331)

* Update CODEOWNERS

* Update CODEOWNERS

* Update CODEOWNERS

* [pre-commit.ci] auto code formatting

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

Fix sign-compare warning (NVIDIA#3408)

Implement more cmath functions to be usable on host and device (NVIDIA#3382)

* Implement more cmath functions to be usable on host and device

* Implement math roots functions

* Implement exponential functions

Redefine and deprecate thrust::remove_cvref (NVIDIA#3394)

* Redefine and deprecate thrust::remove_cvref

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Fix assert definition for NVHPC due to constexpr issues (NVIDIA#3418)

NVHPC cannot decide at compile time where the code would run so _CCCL_ASSERT within a constexpr function breaks it.

Fix this by always using the host definition which should also work on device.

Fixes NVIDIA#3411

Extend CUB reduce benchmarks (NVIDIA#3401)

* Rename max.cu to custom.cu, since it uses a custom operator
* Extend types covered my min.cu to all fundamental types
* Add some notes on how to collect tuning parameters

Fixes: NVIDIA#3283

Update upload-pages-artifact to v3 (NVIDIA#3423)

* Update upload-pages-artifact to v3

* Empty commit

---------

Co-authored-by: Ashwin Srinath <shwina@users.noreply.github.com>

Replace and deprecate thrust::cuda_cub::terminate (NVIDIA#3421)

`std::linalg` accessors and `transposed_layout` (NVIDIA#2962)

Add round up/down to multiple (NVIDIA#3234)

[FEA]: Introduce Python module with CCCL headers (NVIDIA#3201)

* Add cccl/python/cuda_cccl directory and use from cuda_parallel, cuda_cooperative

* Run `copy_cccl_headers_to_aude_include()` before `setup()`

* Create python/cuda_cccl/cuda/_include/__init__.py, then simply import cuda._include to find the include path.

* Add cuda.cccl._version exactly as for cuda.cooperative and cuda.parallel

* Bug fix: cuda/_include only exists after shutil.copytree() ran.

* Use `f"cuda-cccl @ file://{cccl_path}/python/cuda_cccl"` in setup.py

* Remove CustomBuildCommand, CustomWheelBuild in cuda_parallel/setup.py (they are equivalent to the default functions)

* Replace := operator (needs Python 3.8+)

* Fix oversights: remove `pip3 install ./cuda_cccl` lines from README.md

* Restore original README.md: `pip3 install -e` now works on first pass.

* cuda_cccl/README.md: FOR INTERNAL USE ONLY

* Remove `$pymajor.$pyminor.` prefix in cuda_cccl _version.py (as suggested under NVIDIA#3201 (comment))

Command used: ci/update_version.sh 2 8 0

* Modernize pyproject.toml, setup.py

Trigger for this change:

* NVIDIA#3201 (comment)

* NVIDIA#3201 (comment)

* Install CCCL headers under cuda.cccl.include

Trigger for this change:

* NVIDIA#3201 (comment)

Unexpected accidental discovery: cuda.cooperative unit tests pass without CCCL headers entirely.

* Factor out cuda_cccl/cuda/cccl/include_paths.py

* Reuse cuda_cccl/cuda/cccl/include_paths.py from cuda_cooperative

* Add missing Copyright notice.

* Add missing __init__.py (cuda.cccl)

* Add `"cuda.cccl"` to `autodoc.mock_imports`

* Move cuda.cccl.include_paths into function where it is used. (Attempt to resolve Build and Verify Docs failure.)

* Add # TODO: move this to a module-level import

* Modernize cuda_cooperative/pyproject.toml, setup.py

* Convert cuda_cooperative to use hatchling as build backend.

* Revert "Convert cuda_cooperative to use hatchling as build backend."

This reverts commit 61637d6.

* Move numpy from [build-system] requires -> [project] dependencies

* Move pyproject.toml [project] dependencies -> setup.py install_requires, to be able to use CCCL_PATH

* Remove copy_license() and use license_files=["../../LICENSE"] instead.

* Further modernize cuda_cccl/setup.py to use pathlib

* Trivial simplifications in cuda_cccl/pyproject.toml

* Further simplify cuda_cccl/pyproject.toml, setup.py: remove inconsequential code

* Make cuda_cooperative/pyproject.toml more similar to cuda_cccl/pyproject.toml

* Add taplo-pre-commit to .pre-commit-config.yaml

* taplo-pre-commit auto-fixes

* Use pathlib in cuda_cooperative/setup.py

* CCCL_PYTHON_PATH in cuda_cooperative/setup.py

* Modernize cuda_parallel/pyproject.toml, setup.py

* Use pathlib in cuda_parallel/setup.py

* Add `# TOML lint & format` comment.

* Replace MANIFEST.in with `[tool.setuptools.package-data]` section in pyproject.toml

* Use pathlib in cuda/cccl/include_paths.py

* pre-commit autoupdate (EXCEPT clang-format, which was manually restored)

* Fixes after git merge main

* Resolve warning: AttributeError: '_Reduce' object has no attribute 'build_result'

```
=========================================================================== warnings summary ===========================================================================
tests/test_reduce.py::test_reduce_non_contiguous
  /home/coder/cccl/python/devenv/lib/python3.12/site-packages/_pytest/unraisableexception.py:85: PytestUnraisableExceptionWarning: Exception ignored in: <function _Reduce.__del__ at 0x7bf123139080>

  Traceback (most recent call last):
    File "/home/coder/cccl/python/cuda_parallel/cuda/parallel/experimental/algorithms/reduce.py", line 132, in __del__
      bindings.cccl_device_reduce_cleanup(ctypes.byref(self.build_result))
                                                       ^^^^^^^^^^^^^^^^^
  AttributeError: '_Reduce' object has no attribute 'build_result'

    warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
============================================================= 1 passed, 93 deselected, 1 warning in 0.44s ==============================================================
```

* Move `copy_cccl_headers_to_cuda_cccl_include()` functionality to `class CustomBuildPy`

* Introduce cuda_cooperative/constraints.txt

* Also add cuda_parallel/constraints.txt

* Add `--constraint constraints.txt` in ci/test_python.sh

* Update Copyright dates

* Switch to https://github.com/ComPWA/taplo-pre-commit (the other repo has been archived by the owner on Jul 1, 2024)

For completeness: The other repo took a long time to install into the pre-commit cache; so long it lead to timeouts in the CCCL CI.

* Remove unused cuda_parallel jinja2 dependency (noticed by chance).

* Remove constraints.txt files, advertise running `pip install cuda-cccl` first instead.

* Make cuda_cooperative, cuda_parallel testing completely independent.

* Run only test_python.sh [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Try using another runner (because V100 runners seem to be stuck) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Fix sign-compare warning (NVIDIA#3408) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Revert "Try using another runner (because V100 runners seem to be stuck) [skip-rapids][skip-matx][skip-docs][skip-vdc]"

This reverts commit ea33a21.

Error message: NVIDIA#3201 (comment)

* Try using A100 runner (because V100 runners still seem to be stuck) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Also show cuda-cooperative site-packages, cuda-parallel site-packages (after pip install) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Try using l4 runner (because V100 runners still seem to be stuck) [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Restore original ci/matrix.yaml [skip-rapids]

* Use for loop in test_python.sh to avoid code duplication.

* Run only test_python.sh [skip-rapids][skip-matx][skip-docs][skip-vdc][skip pre-commit.ci]

* Comment out taplo-lint in pre-commit config [skip-rapids][skip-matx][skip-docs][skip-vdc]

* Revert "Run only test_python.sh [skip-rapids][skip-matx][skip-docs][skip-vdc][skip pre-commit.ci]"

This reverts commit ec206fd.

* Implement suggestion by @shwina (NVIDIA#3201 (review))

* Address feedback by @leofang

---------

Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com>

cuda.parallel: Add optional stream argument to reduce_into() (NVIDIA#3348)

* Add optional stream argument to reduce_into()

* Add tests to check for reduce_into() stream behavior

* Move protocol related utils to separate file and rework __cuda_stream__ error messages

* Fix synchronization issue in stream test and add one more invalid stream test case

* Rename cuda stream validation function after removing leading underscore

* Unpack values from __cuda_stream__ instead of indexing

* Fix linting errors

* Handle TypeError when unpacking invalid __cuda_stream__ return

* Use stream to allocate cupy memory in new stream test

Upgrade to actions/deploy-pages@v4 (from v2), as suggested by @leofang (NVIDIA#3434)

Deprecate `cub::{min, max}` and replace internal uses with those from libcu++ (NVIDIA#3419)

* Deprecate `cub::{min, max}` and replace internal uses with those from libcu++

Fixes NVIDIA#3404

Fix CI issues (NVIDIA#3443)

Remove deprecated `cub::min` (NVIDIA#3450)

* Remove deprecated `cuda::{min,max}`

* Drop unused `thrust::remove_cvref` file

Fix typo in builtin (NVIDIA#3451)

Moves agents to `detail::<algorithm_name>` namespace (NVIDIA#3435)

uses unsigned offset types in thrust's scan dispatch (NVIDIA#3436)

Default transform_iterator's copy ctor (NVIDIA#3395)

Fixes: NVIDIA#2393

Turn C++ dialect warning into error (NVIDIA#3453)

Uses unsigned offset types in thrust's sort algorithm calling into `DispatchMergeSort` (NVIDIA#3437)

* uses thrust's dynamic dispatch for merge_sort

* [pre-commit.ci] auto code formatting

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

Refactor allocator handling of contiguous_storage (NVIDIA#3050)

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Drop thrust::detail::integer_traits (NVIDIA#3391)

Add cuda::is_floating_point supporting half and bfloat (NVIDIA#3379)

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Improve docs of std headers (NVIDIA#3416)

Drop C++11 and C++14 support for all of cccl (NVIDIA#3417)

* Drop C++11 and C++14 support for all of cccl

---------

Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com>

Deprecate a few CUB macros (NVIDIA#3456)

Deprecate thrust universal iterator categories (NVIDIA#3461)

Fix launch args order (NVIDIA#3465)

Add `--extended-lambda` to the list of removed clangd flags (NVIDIA#3432)

add `_CCCL_HAS_NVFP8` macro (NVIDIA#3429)

Add `_CCCL_BUILTIN_PREFETCH` (NVIDIA#3433)

Drop universal iterator categories (NVIDIA#3474)

Ensure that headers in `<cuda/*>` can be build with a C++ only compiler (NVIDIA#3472)

Specialize __is_extended_floating_point for FP8 types (NVIDIA#3470)

Also ensure that we actually can enable FP8 due to FP16 and BF16 requirements

Co-authored-by: Michael Schellenberger Costa <miscco@nvidia.com>

Moves CUB kernel entry points to a detail namespace (NVIDIA#3468)

* moves emptykernel to detail ns

* second batch

* third batch

* fourth batch

* fixes cuda parallel

* concatenates nested namespaces

Deprecate block/warp algo specializations (NVIDIA#3455)

Fixes: NVIDIA#3409

Refactor CUB's util_debug (NVIDIA#3345)
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.

4 participants