Memory cuda memcheck输出的函数名跟踪
我运行到Memory cuda memcheck输出的函数名跟踪,memory,cuda,gpu,memcheck,Memory,Cuda,Gpu,Memcheck,我运行到cudamemcheck调试我的代码,输出如下 ========= Program hit cudaErrorCudartUnloading (error 29) due to "driver shutting down" on CUDA API call to cudaFree. ========= Saved host backtrace up to driver entry point at error ========= Host Frame:/usr/lib/
cudamemcheck
调试我的代码,输出如下
========= Program hit cudaErrorCudartUnloading (error 29) due to "driver shutting down" on CUDA API call to cudaFree.
========= Saved host backtrace up to driver entry point at error
========= Host Frame:/usr/lib/x86_64-linux-gnu/libcuda.so.1 [0x2e40d3]
========= Host Frame:./nmt [0x53526]
========= Host Frame:./nmt [0xfbd9]
terminate called after throwing an instance of '========= Host Frame:/lib/x86_64-linux-gnu/libc.so.6 [0x3c259]
========= Host Frame:/lib/x86_64-linux-gnu/libc.so.6 [0x3c2a5]
========= Host Frame:/lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main + 0xfc) [0x21ecc]
thrust::system::system_error'
========= Host Frame:./nmt [0x530a]
=========
what(): driver shutting down
========= Error: process didn't terminate successfully
========= Internal error (20)
========= No CUDA-MEMCHECK results found
是否可以从行主机帧:./nmt[0x53526]
判断代码中哪里断开?如果是,我该怎么做
谢谢。正如@Talonmes所指出的(我想他不会介意我发布CW答案),cuda memcheck
工具提供了额外的堆栈回溯跟踪功能,可以在命令行中添加--show backtrace
开关来启用该功能
回溯可包括主机和设备功能(即主机和设备回溯)
如果还使用主机调试符号信息编译了应用程序(例如linux上的-g
),则cuda memcheck
可以在主机回溯中显示主机函数的函数名
更多使用信息可在中找到。这是一个很好的资源。谢谢@Talonmies是的,如果有疑问,请阅读文档