原因: 在GPU端申请空间较小时,程序可以运行,当申请空间较大时,程序报错,此时查看显存的使用情况,电脑显存大小为2GB,使用了2885MB,发现不是这个内存不够的原因,部分代码如下:
cudaError_t src;
cudaMalloc((void **))&Md,sizeof(device_Model);
src= cudaDeviceSynchronize();
if(src != cudaSuccess)
cout<<“空间开辟错误”<<cudaGetErrorString(src)<<endl;
//运行输出结果
// an illegal memoryaccess was encountered 遇到非法内存访问