1. 将程序编译成可调式版本

    $: nvcc –g –G program.cu –o program

    -g 表示将CPU代码(host)编译成可调式版本,-G表示将GPU代码(kernel)编译成可调式版本。

  2. 进入调试器

    $: cuda-gdb

    cuda-gdb

  3. 调试指令

指令简写指令说明举例
file exe_name指定待调试的可执行文件file program
set args arg1 arg2 …设置命令行参数set args 1 2
breakpointb设置断点b main
b 数字
runr在调试器中执行程序
start开始执行程序,并在main的第一行停住
nextr单步执行到下一行
steps单步执行,会进入函数内部执行
continuec执行已暂停程序到下一断点或结尾处
printp打印参数信息,查看变量p var1
thread列出当前主机线程
cuda列出当前活跃的kernel/grid/block/thread内容,并允许将焦点移至此处cuda thread(1, 1, 1)
cuda kernel 1 block(1, 2, 1)
info查看参数所包含的具体信息info devices
info kernels
info threads
backtracebt显示当前函数调用栈的内容
Logo

更多推荐