我按照下面的例子: multi-GPU basic usage
该代码正在总结:
回答为已接受的人发送添加函数,如下所示:
for(int i=0;i<10000;++i) {
for(int dev=0; dev<2; dev++) {
cudaSetDevice(dev);
add<<<NB,NT>>>( dev_a[dev], dev_b[dev], dev_c[dev], Ns[dev] );
}
}
在上面的代码中,他NS[dev]
还添加了添加功能,但是发送问题帖子的人添加了如下功能:
__global__ void add( double *a, double *b, double *c){
int tid = threadIdx.x + blockIdx.x * blockDim.x;
while(tid < N){
c[tid] = a[tid] + b[tid];
tid += blockDim.x * gridDim.x;
}
}
上述函数的作用是什么 Ns[dev]
。因为当我 Ns[dev]
在下面的代码中删除时,像这样:
add<<<NB,NT>>>( dev_a[dev], dev_b[dev], dev_c[dev]);
添加功能不起作用。我的意思是它不会增加值。
我如何 Ns[dev]
在这里使用添加功能?