我正在使用Totalview來嘗試調試CUDA內核。我選擇了在CUDA中調試內存錯誤的選項,並停止主機上的內存錯誤。「Lane User Stack Overflow」調試CUDA程序
我在這一行獲得一個OFMŸ內核停止:
d_test_filt[i*cols+j] = cuCmulf(cuCmulf(d_usKernel[i*cols + j],d_convolver[i*cols + j]),d_rr[i*cols + j]) ;
錯誤酒吧「裏的用戶堆棧溢出說:」
這個錯誤是什麼意思到底是什麼?我如何解決這個問題?
在這種情況下,所有這些d_數組已被分配到設備上。 i * cols + j遠小於陣列的大小(1024 x 1024),其中i和j分別爲311和808
我建議你找到堆棧溢出的原因,但如果這是不可避免的,你可以使用['cudaDeviceSetLimit()'](http://developer.download.nvidia)來增加每線程堆棧大小。com/compute/DevZone/docs/html/C/doc/html/group__CUDART__DEVICE_gb8a22e29cc297634b0702db0b69f59e7.html) – harrism
至於找到原因 - 我的意思是,唯一可以做的是可能刪除內核中的變量聲明,對吧? – Derek