仔细看了看前面的报错:

E tensorflow/stream_executor/cuda/cuda_dnn.cc:364] Loaded runtime CuDNN libr....

是cudnn的问题我使用的是7.0 源码用6.0

于是重新下载

#解压文件
tar -zxvf cudnn-8.0-linux-x64-v7.tgz

#切换到刚刚解压出来的文件夹路径
cd cuda
#复制include里的头文件(记得转到include文件里执行下面命令)
sudo cp /include/cudnn.h  /usr/local/cuda/include/

#复制lib64下的lib文件到cuda安装路径下的lib64(记得转到lib64文件里执行下面命令)
sudo cp lib*  /usr/local/cuda/lib64/

#设置权限
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

#======更新软连接======
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.6   #删除原有动态文件,版本号注意变化,可在cudnn的lib64文件夹中查看   
sudo ln -s libcudnn.so.6.0.2 libcudnn.so.6  #生成软衔接(注意这里要和自己下载的cudnn版本对应,可以在/usr/local/cuda/lib64下查看自己libcudnn的版本)
sudo ln -s libcudnn.so.6 libcudnn.so #生成软链接
sudo ldconfig -v #立刻生效

 

#####中间想查看软链接使用命令# ls -al

之后运行这个问题解决,担又报错:

tensorflow.python.framework.errors_impl.ResourceExhaustedError: OOM when allocating tensor with shape[64,147,147,64]

出现以上类似的错误,主要是因为模型中的batch_size值设置过大,导致内存溢出,batch_size是每次送入模型中的值,由于GPU的关系,一般设为16,32,64,128。

Logo

更多推荐