GPUCompiler.jl
GPUCompiler.jl copied to clipboard
Truncated static backtraces
I was just looking at a backtrace in CUDA and the following was not that helpful.
3×1000000 CuArray{Float32, 2, CUDA.DeviceMemory}:
ERROR: a BoundsError was thrown during kernel execution on thread (256, 1, 1) in block (3, 1, 1).
Out-of-bounds array access
Stacktrace:
[1] throw_boundserror at /home/vchuravy/.julia/packages/CUDA/ja0IX/src/device/quirks.jl:15
[2] multiple call sites at unknown:0
Error showing value of type CuArray{Float32, 2, CUDA.DeviceMemory}:
Maybe we can add the common root? E.g. At least the kernel?
We could also add a pass to duplicate every function such that it's only called from a single place, allowing us to reconstruct debug info much more faithfully. With restrictions, of course (recursive functions, etc).