这次也会简要介绍下cuda-gdb的用法, 其实和gdb用法几乎一样, 也就是多了个cuda命令.
----
cuda-gdb
如果之前没有用过gdb, 可以速学一下, 就几个指令....在调试之前, 我把代码贴出来:
#include
__global__ void add(float * x, float *y, float * z, int n){...default: %.4f\n", maxError);
cudaFree(x);
cudaFree(y);
cudaFree(z);
return 0;
}
之后就是常规操作了...----
未优化并行规约
如果按照常规的思路, 两两进行进行加法运算. 每次步长翻倍即可, 从算法的角度来说, 这是没啥问题的. 但是没有依照GPU架构进行设计.
?...d_partial_sum, blocksPerGrid * size );
for ( int i = 0; i < N; ++i )
d_a[i] = i;
/* 调用内核函数