Closed krasznaa closed 2 months ago
Looks like you found it. :+1:
Indeed. No thanks to cuda-gdb
with that one... :frowning: Even though in Debug
mode we don't ask for any optimizations from nvcc
, the compiled code kept behaving very weirdly still... :confused:
It was the debug SYCL build, ran on the host CPU, that let me finally understand the issue. As in that one gdb-oneapi
was actually giving me meaningful values for the variables in the problematic thread. :thinking:
So we may not want to get rid of SYCL all too soon, after everything that's been said recently.
Closes #709.
Indeed. No thanks to
cuda-gdb
with that one... 😦 Even though inDebug
mode we don't ask for any optimizations fromnvcc
, the compiled code kept behaving very weirdly still... 😕
Yes I have been seeing this too, cuda-gdb
(and to a lesser extent compute-sanitizer
) have been very unhelpful lately. I wonder if some update on NVIDIA's end broke the tools or if we're somehow using the wrong compiler flags? :thinking:
Maybe we need to use -O0
explicitly now? :thinking: Since CMake doesn't do that automatically.
Host compilers of course don't do any optimizations unless asked for it, but maybe nvcc
now adopted icpx
-es behaviour, that if you don't ask for anything, it tries to use some aggressive optimization to "help you"... :confused:
This PR is just here to help in the explanation of a bug that I'll open an issue about shortly.