我有一个内核,它可以在调试版本中工作,但在发布版本中失败。我怀疑我正在读取或写入越界,但CUDA内存检查器没有显示任何错误。所以,我做了一个测试,我用下面的内核写和读:{
int x[1];内存检查器未捕获越界写入和读取。我能够通过将循环增加到1,000,000轮来检测越界写入,这导致内核在i= 502,5
我使用的是QuadroCUDA卡,CUDA3.0,K2000M驱动5.5,运行时5.0,使用Visual Studio2010编程。我的GPU算法对树(常量)运行许多并行的广度优先搜索( of )。除了从常量数组和树中读取数据外,线程是独立的。在每个线程中可以有一些malloc/free操作,遵循带有队列的BFS算法(无递归)。有N个线程;树叶节点的数量也是N。我使用每个
我做了一个简单的CUDA内核,由于一些我不理解的原因,它无法启动。下面是我的全局变量。int* d_volume=NULL;//source data on device下一个函数是内核启动器256*256*256*sizeof( int),cudaMemcpyDeviceToHost);}
问题似乎出