TensorFlow下运行mnist遇到的问题、更新cudnn方法

按照TensorFlow官方的教程运行mnist,遇到以下问题:

E tensorflow/stream_executor/cuda/cuda_dnn.cc:390]Loaded runtime CuDNN library: 5005 (compatibility version 5000) but source wascompiled with 5110 (compatibility version 5100).  If using a binary install, upgrade your CuDNNlibrary to match.  If building fromsources, make sure the library loaded at runtime matches a compatible versionspecified during compile configuration.

F tensorflow/core/kernels/conv_ops.cc:605]Check failed: stream->parent()->GetConvolveAlgorithms(&algorithms)

已放弃 (核心已转储)


原因:大概就是cudnn版本不符合,我的是5.0,官网要求的是5.1

解决方法:更新cudnn

删除之前安装的cudnn
$rm -rf /usr/local/cuda-8.0/targets/x86_64-linux/include/cudnn.h
$cd /usr/local/cuda/lib64
$sudo rm libcudnn.so
$sudo rm libcudnn.so.5
$sudo rm libcudnn.so.5.0.5

安装安装需要版本的cudnn,在终端cd到刚解压的cuda文件夹
$cd package
$sudo tar xvfcudnn-8.0-linux-x64-v5.1.tgz
$cd cuda/include
$sudo cp cudnn.h /usr/local/cuda/include/
$cd ../lib64
$sudo cp libcudnn.so /usr/local/cuda/lib64/
建立软链接(注意版本号换成你自己的)
$cd /usr/local/cuda/lib64
$sudo chmod +r libcudnn.so.5.1.10
$sudo ln -sf libcudnn.so.5.1.10 libcudnn.so.5
$sudo ln -sf libcudnn.so.5 libcudnn.so
$sudo ldconfig
报错
$/sbin/ldconfig.real: /usr/lib/nvidia-375/libEGL.so.1 不是符号连接
$/sbin/ldconfig.real: /usr/lib32/nvidia-375/libEGL.so.1 不是符号连接
原因:
系统找的是一个符号连接,而不是一个文件。这应该是个bug....
解决方法:
1.对这两个文件更名
2.重新建立符号连接

$sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org
$sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org
$sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.39 /usr/lib/nvidia-375/libEGL.so.1
$sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.39 /usr/lib32/nvidia-375/libEGL.so.1

$sudo ldconfig

©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值