CUDA.compute_sanitizer() method not defined

I want to use compute-sanitizer to look into a memory error, but when I run:

julia> using CUDA

julia> CUDA.compute_sanitizer()

I just get ERROR: UndefVarError: compute_sanitizer not defined. CUDA.compute_sanitizer_cmd() and CUDA.run_compute_sanitizer() aren’t defined for me either.

The documentation says “To facilitate using the compute sanitizer, CUDA.jl ships the tool as part of its artifacts,” which to my understanding, means I shouldn’t have to install anything outside of CUDA.jl in order to use the tool, but please correct me if I’m wrong.

If it helps, this is my versioninfo:

julia> CUDA.versioninfo()
CUDA runtime 12.5, artifact installation
CUDA driver 12.4
NVIDIA driver 551.78.0

CUDA libraries: 
- CUBLAS: 12.5.3
- CURAND: 10.3.6
- CUFFT: 11.2.3
- CUSOLVER: 11.6.3
- CUSPARSE: 12.5.1
- CUPTI: 2024.2.1 (API 23.0.0)
- NVML: 12.0.0+550.54.14

Julia packages: 
- CUDA: 5.4.3
- CUDA_Driver_jll: 0.9.1+1
- CUDA_Runtime_jll: 0.14.1+0

Toolchain:
- Julia: 1.10.4
- LLVM: 15.0.7

Preferences:
- CUDA_Runtime_jll.version: 12.5

1 device:
  0: NVIDIA GeForce RTX 3050 Laptop GPU (sm_86, 3.871 GiB / 4.000 GiB available)

julia> versioninfo()
Julia Version 1.10.4
Commit 48d4fd48430 (2024-06-04 10:41 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 16 × AMD Ryzen 7 5800H with Radeon Graphics
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-15.0.7 (ORCJIT, znver3)
Threads: 1 default, 0 interactive, 1 GC (on 16 virtual cores)

To add on, when I run

$ find ~/.julia/artifacts -name "compute-sanitizer"

I don’t find anything.

Someone I’m working with also has the same issue, so this may not just be a one-off issue. Does anybody have any ideas about this?

Ah, the documentation is out of date here. That piece should be removed, or updated to suggest using CUDA_SDK_jll which does still provide the compute-sanitizer binary (see e.g. how it’s done in our test suite). Could you open an issue, or even better, a PR?