我目前正在GPU上編寫一個矩陣乘法,並希望調試我的代碼,但由於我無法在設備函數中使用printf,是否還有其他方法可以用來查看要執行的操作在那個函數裏面。這我目前的功能:CUDA中的printf __global__函數
__global__ void MatrixMulKernel(Matrix Ad, Matrix Bd, Matrix Xd){
int tx = threadIdx.x;
int ty = threadIdx.y;
int bx = blockIdx.x;
int by = blockIdx.y;
float sum = 0;
for(int k = 0; k < Ad.width ; ++k){
float Melement = Ad.elements[ty * Ad.width + k];
float Nelement = Bd.elements[k * Bd.width + tx];
sum += Melement * Nelement;
}
Xd.elements[ty * Xd.width + tx] = sum;
}
我想知道如果廣告和Bd是我認爲它,並看看是否實際上被稱爲該功能。
爲什麼不使用cuda-gdb? – Bear 2010-01-31 23:08:27