答案 0 :(得分:1)
由于Nsight报告的错误消息已清除,因此错误是由Nsight在设备上的可用内存不足以交互式调试您正在运行的代码引起的。引自Nsight文档:
启用CUDA Memory Checker后,它将消耗额外的内存 在GPU上。如果没有足够的补丁RAM用于CUDA调试器,那么 将给出以下错误:
Internal debugger error occurred while attempting to launch "KernelName - CUmodule 0x04e67f10: code patching failed due to lack of code patching memory.
如果发生这种情况,请通过转到Nsight>来增加补丁RAM因子。 选项> CUDA>代码修补内存因子。
这是内核指令大小的乘数,已添加 基本补丁RAM大小为64k。
另一种选择是禁用共享或全局内存检查 为了减少补丁RAM的使用。
原始海报指出,将代码修补内存因子从2比16增加解决了这个问题。