问题
今天在使用 tensorflow-yolov3 的时候,发现报错
Loaded runtime CuDNN library: 7.1.4 but source was compiled with: 7.2.1. CuDNN library major and minor version needs to match or have higher minor version in case of
CuDNN 7.0 or later version.
emmmmmm。。。看了下,好像说是CuDNN的版本有点低,说是源文件是用 CuDNN 7.2.1 版本编译的,而我们使用的是版本 7.1.4,这可能跟我们安装的 tensorflow-gpu 的版本有关
解决方法
我到 stackoverflow 上查找了相关错误,发现大致有两种解决思路
1.降低tensorflow-gpu的版本
这个方法我是在这篇博客上看到的,我没去尝试,我自己使用的是方法二。
2.替换CuDNN的版本
去英伟达官网上下载7.2.1版本以后的与本机安装的 CUDA 版本适配的 CUDNN ,我下的是现在最新版的 7.4.1 的版本
替换好之后再次运行之前的代码,发现运行成功。
3.从源代码自己重新构建
感觉有点高端。。没去试,还是自己太菜了,能简单解决就简单解决吧 orz。。。
CUDA版本问题
感觉这个也需要题一题,上次我把台式机装成双系统之后,在 linux 环境下配置 CUDA ,跟我之前一篇博客的流程差不多,结果运行就是错误,后来查了才发现我装的是 CUDA10.0,而 tensorflow-gpu 并不支持 CUDA10.0,只支持 8.0 和 9.0 的版本。。。。简直了
这里附上 tensorflow 官网上给出的 tensorflow-gpu 对应的 CUDA 版本
Linux
macOS
Windows
希望以上内容能帮助到你