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

[CUDAX] Terminate in managed_memory_resource::deallocate_async #3185

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

pciolkosz
Copy link
Contributor

@pciolkosz pciolkosz commented Dec 17, 2024

While it is fine to forward allocate_async to allocate, it is invalid to forward deallocate_async to deallocate, since the memory might still be in use. This PR changes deallocate_async on managed_memory_resource to throw terminate, while pinned_memory_resource will be handled separately.

@pciolkosz pciolkosz requested a review from a team as a code owner December 17, 2024 23:59
Copy link
Contributor

🟩 CI finished in 23m 25s: Pass: 100%/26 | Total: 2h 21m | Avg: 5m 25s | Max: 18m 42s | Hits: 82%/312
  • 🟩 cudax: Pass: 100%/26 | Total: 2h 21m | Avg: 5m 25s | Max: 18m 42s | Hits: 82%/312

    🟩 cpu
      🟩 amd64              Pass: 100%/22  | Total:  2h 07m | Avg:  5m 48s | Max: 18m 42s | Hits:  82%/312   
      🟩 arm64              Pass: 100%/4   | Total: 13m 23s | Avg:  3m 20s | Max:  3m 28s
    🟩 ctk
      🟩 12.0               Pass: 100%/3   | Total: 16m 42s | Avg:  5m 34s | Max:  9m 35s | Hits:  82%/156   
      🟩 12.5               Pass: 100%/2   | Total: 11m 56s | Avg:  5m 58s | Max:  6m 18s
      🟩 12.6               Pass: 100%/21  | Total:  1h 52m | Avg:  5m 21s | Max: 18m 42s | Hits:  82%/156   
    🟩 cudacxx
      🟩 nvcc12.0           Pass: 100%/3   | Total: 16m 42s | Avg:  5m 34s | Max:  9m 35s | Hits:  82%/156   
      🟩 nvcc12.5           Pass: 100%/2   | Total: 11m 56s | Avg:  5m 58s | Max:  6m 18s
      🟩 nvcc12.6           Pass: 100%/21  | Total:  1h 52m | Avg:  5m 21s | Max: 18m 42s | Hits:  82%/156   
    🟩 cudacxx_family
      🟩 nvcc               Pass: 100%/26  | Total:  2h 21m | Avg:  5m 25s | Max: 18m 42s | Hits:  82%/312   
    🟩 cxx
      🟩 Clang9             Pass: 100%/1   | Total:  3m 41s | Avg:  3m 41s | Max:  3m 41s
      🟩 Clang10            Pass: 100%/1   | Total:  4m 16s | Avg:  4m 16s | Max:  4m 16s
      🟩 Clang11            Pass: 100%/1   | Total:  3m 38s | Avg:  3m 38s | Max:  3m 38s
      🟩 Clang12            Pass: 100%/1   | Total:  3m 54s | Avg:  3m 54s | Max:  3m 54s
      🟩 Clang13            Pass: 100%/1   | Total:  3m 54s | Avg:  3m 54s | Max:  3m 54s
      🟩 Clang14            Pass: 100%/1   | Total:  3m 46s | Avg:  3m 46s | Max:  3m 46s
      🟩 Clang15            Pass: 100%/1   | Total:  3m 58s | Avg:  3m 58s | Max:  3m 58s
      🟩 Clang16            Pass: 100%/1   | Total:  4m 05s | Avg:  4m 05s | Max:  4m 05s
      🟩 Clang17            Pass: 100%/1   | Total:  4m 01s | Avg:  4m 01s | Max:  4m 01s
      🟩 Clang18            Pass: 100%/4   | Total: 29m 01s | Avg:  7m 15s | Max: 18m 42s
      🟩 GCC9               Pass: 100%/1   | Total:  3m 26s | Avg:  3m 26s | Max:  3m 26s
      🟩 GCC10              Pass: 100%/1   | Total:  3m 36s | Avg:  3m 36s | Max:  3m 36s
      🟩 GCC11              Pass: 100%/1   | Total:  3m 46s | Avg:  3m 46s | Max:  3m 46s
      🟩 GCC12              Pass: 100%/2   | Total: 20m 00s | Avg: 10m 00s | Max: 16m 11s
      🟩 GCC13              Pass: 100%/4   | Total: 13m 16s | Avg:  3m 19s | Max:  3m 28s
      🟩 MSVC14.36          Pass: 100%/1   | Total:  9m 35s | Avg:  9m 35s | Max:  9m 35s | Hits:  82%/156   
      🟩 MSVC14.39          Pass: 100%/1   | Total: 11m 15s | Avg: 11m 15s | Max: 11m 15s | Hits:  82%/156   
      🟩 NVHPC24.7          Pass: 100%/2   | Total: 11m 56s | Avg:  5m 58s | Max:  6m 18s
    🟩 cxx_family
      🟩 Clang              Pass: 100%/13  | Total:  1h 04m | Avg:  4m 56s | Max: 18m 42s
      🟩 GCC                Pass: 100%/9   | Total: 44m 04s | Avg:  4m 53s | Max: 16m 11s
      🟩 MSVC               Pass: 100%/2   | Total: 20m 50s | Avg: 10m 25s | Max: 11m 15s | Hits:  82%/312   
      🟩 NVHPC              Pass: 100%/2   | Total: 11m 56s | Avg:  5m 58s | Max:  6m 18s
    🟩 gpu
      🟩 v100               Pass: 100%/26  | Total:  2h 21m | Avg:  5m 25s | Max: 18m 42s | Hits:  82%/312   
    🟩 jobs
      🟩 Build              Pass: 100%/24  | Total:  1h 46m | Avg:  4m 25s | Max: 11m 15s | Hits:  82%/312   
      🟩 Test               Pass: 100%/2   | Total: 34m 53s | Avg: 17m 26s | Max: 18m 42s
    🟩 sm
      🟩 90                 Pass: 100%/1   | Total:  3m 05s | Avg:  3m 05s | Max:  3m 05s
      🟩 90a                Pass: 100%/1   | Total:  3m 16s | Avg:  3m 16s | Max:  3m 16s
    🟩 std
      🟩 17                 Pass: 100%/6   | Total: 22m 31s | Avg:  3m 45s | Max:  5m 38s
      🟩 20                 Pass: 100%/20  | Total:  1h 58m | Avg:  5m 55s | Max: 18m 42s | Hits:  82%/312   
    

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

# Runner
18 linux-amd64-cpu16
4 linux-arm64-cpu16
2 windows-amd64-cpu16
2 linux-amd64-gpu-v100-latest-1

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.

I dont think this is the right approach, we rather want something liketerminate() see nvbug5017698

@pciolkosz pciolkosz changed the title [CUDAX] Throw in managed_memory_resource::deallocate_async [CUDAX] Terminate in managed_memory_resource::deallocate_async Dec 18, 2024
Copy link
Contributor

🟩 CI finished in 46m 27s: Pass: 100%/26 | Total: 2h 32m | Avg: 5m 52s | Max: 22m 35s | Hits: 82%/312
  • 🟩 cudax: Pass: 100%/26 | Total: 2h 32m | Avg: 5m 52s | Max: 22m 35s | Hits: 82%/312

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

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

# Runner
18 linux-amd64-cpu16
4 linux-arm64-cpu16
2 windows-amd64-cpu16
2 linux-amd64-gpu-v100-latest-1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Progress
Development

Successfully merging this pull request may close these issues.

2 participants