我在 CUDA 上使用 CAPS OpenACC 。我正在尝试使用 cuda-gdb 进行调试。我可以用 cuda-gdb 调试正常的c / c ++代码。换句话说,我无法调试codelet代码。是否有人在cuda上调试 openACC ?或者我不能在 codelet 中放置断点。我该怎么做才能调试?
我除了编译之外
hmpp -d2 -kk -g gcc -g vecadd.c -o vecadd.x
我的openACC代码非常简单:
#pragma acc kernels copyin(a[0:n],b[0:n]), copyout(c[0:n])
for(i=0; i<n; i++) {
c[i] = a[i] + b[i];
}
答案 0 :(得分:0)
根据this post,您需要将-G
个选项传递给capsmc
,以便使用调试符号编译CUDA代码。
由于CAPS编译器只生成普通的CUDA代码,因此您应该可以使用cuda-gdb
。