cuda-gdb 是否会自动为 CUDA_EXCEPTION_5 Warp 超出范围地址错误选择正确的焦点?

Sea*_*ean 3 debugging cuda exception

我的内核因 CUDA_EXCEPTION_5、Warp 超出范围地址而失败。

cuda-gdb 自动将焦点放在特定块上。是发生错误的块还是当 nvidia 文档指出 CUDA_EXCEPTION_5“不精确”时,这意味着调试器无法确定特定异常发生在哪个块/线程中?

如果它只是针对扭曲,有没有办法在 cuda-gdb 中找出异常发生在哪个扭曲以及哪些块属于该扭曲?

Eug*_*ene 5

cuda-gdb 并不总是能够精确检测抛出异常的线程。为了提高精度,您需要在启动应用程序之前使用“set cuda memcheck on”命令启用 memcheck 集成。请注意,在启用集成 memcheck 的情况下运行应用程序会降低性能。