cuda中cudaDeviceSynchronize函数返回cudaError_t的原因

原因: 在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 遇到非法内存访问

你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


本次提问扣除的有问必答次数,已经为您补发到账户,我们后续会持续优化,扩大我们的服务范围,为您带来更好地服务。