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

Document some transform iterator corner cases #2740

Merged
merged 1 commit into from
Nov 11, 2024

Conversation

bernhardmgruber
Copy link
Contributor

This PR documents some of my insights on the interplay between thrust::transform_iterator and identity functors.

@bernhardmgruber bernhardmgruber added the thrust For all items related to Thrust. label Nov 7, 2024
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.

:sad_trombone:

@bernhardmgruber bernhardmgruber force-pushed the doc_transform_iter branch 2 times, most recently from 8ccbd18 to b94d1c6 Compare November 7, 2024 19:28
Copy link
Contributor

github-actions bot commented Nov 7, 2024

🟩 CI finished in 3h 59m: Pass: 100%/222 | Total: 7d 03h | Avg: 46m 19s | Max: 1h 25m | Hits: 20%/16128
  • 🟩 cub: Pass: 100%/110 | Total: 4d 00h | Avg: 52m 22s | Max: 1h 15m | Hits: 3%/2948

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

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

    🟩 cpu
      🟩 amd64              Pass: 100%/2   | Total:  9m 58s | Avg:  4m 59s | Max:  7m 34s
    🟩 ctk
      🟩 12.6               Pass: 100%/2   | Total:  9m 58s | Avg:  4m 59s | Max:  7m 34s
    🟩 cudacxx
      🟩 nvcc12.6           Pass: 100%/2   | Total:  9m 58s | Avg:  4m 59s | Max:  7m 34s
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/2   | Total:  9m 58s | Avg:  4m 59s | Max:  7m 34s
    🟩 cxx
      🟩 GCC13              Pass: 100%/2   | Total:  9m 58s | Avg:  4m 59s | Max:  7m 34s
    🟩 cxx_family
      🟩 GCC                Pass: 100%/2   | Total:  9m 58s | Avg:  4m 59s | Max:  7m 34s
    🟩 gpu
      🟩 v100               Pass: 100%/2   | Total:  9m 58s | Avg:  4m 59s | Max:  7m 34s
    🟩 jobs
      🟩 Build              Pass: 100%/1   | Total:  2m 24s | Avg:  2m 24s | Max:  2m 24s
      🟩 Test               Pass: 100%/1   | Total:  7m 34s | Avg:  7m 34s | Max:  7m 34s
    
  • 🟩 python: Pass: 100%/1 | Total: 17m 04s | Avg: 17m 04s | Max: 17m 04s

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

👃 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: 222)

# Runner
184 linux-amd64-cpu16
16 linux-arm64-cpu16
13 linux-amd64-gpu-v100-latest-1
9 windows-amd64-cpu16

@bernhardmgruber bernhardmgruber marked this pull request as ready for review November 11, 2024 10:08
@bernhardmgruber bernhardmgruber requested review from a team as code owners November 11, 2024 10:08
@bernhardmgruber bernhardmgruber merged commit eed8866 into NVIDIA:main Nov 11, 2024
236 checks passed
@bernhardmgruber bernhardmgruber deleted the doc_transform_iter branch November 11, 2024 10:09
fbusato pushed a commit to fbusato/cccl that referenced this pull request Nov 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
thrust For all items related to Thrust.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants