(转载)CUDA、tensorflow与cuDNN的版本匹配问题
转载:https://blog.csdn.net/MahoneSun/article/details/80809042
CUDA、tensorflow与cuDNN的版本匹配问题
一、问题现象
CUDA、tensorflow 与 cuDNN有版本匹配的问题,经常出现安装了某一版本的 CUDA 后,tensorflow 不支持相应版本的CUDA,或者tensorflow 支持 CUDA,但与 cuDNN版本不匹配,找不到这个那个文件,网上甚至有 CUDA装错等于重装的说法,很是麻烦。
这里列举了一些我遇到过的错误(有的没有装cuDNN)
CUDA9.2 + 1.8版本tensorflow
ImportError: libcudnn.so.7: cannot open shared objectfile: No such file or directory
CUDA9.2 +1.7版本tensorflow
ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
CUDA9.2 +1.6版本tensorflow
ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
CUDA9.2 +1.5版本tensorflow
ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
CUDA9.2 +1.3版本tensorflow
ImportError: libcusolver.so.8.0: cannot open sharedobject file: No such file or directory
DUDA9.0+ 1.8版本tensorflow
ImportError: libcudnn.so.7: cannot open shared objectfile: No such file or directory
CUDA 8.0+ 1.8版本tensorflow
ImportError: libcudnn.so.6: cannot open shared objectfile: No such file or directory
CUDA 8.0+ 1.8版本tensorflow
ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
CUDA 8.0+ 1.7版本tensorflow
ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
CUDA 8.0+ 1.6版本tensorflow
ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
CUDA 8.0+ 1.5版本tensorflow
ImportError: libcublas.so.9.0: cannot open shared objectfile: No such file or directory
二、问题分析
大概总结了一下,以上错误有两种类型
1、libcudnn.so.x 找不到的情况:没有装 cuDNN
2、libcublas.so.x 找不到的情况:版本不匹配, CUDA与 cuDNN 或者tensorflow 版本不匹配,等等
三、解决办法:
根据现象和一些实际的验证操作,大概总结出以下安装方法比较靠谱,但由于时间关系没有作全系列的组合验证,可以作为参考:
3.1 安装顺序
先安装 CUDA,再安装 tensorflow ,最后安装 cuDNN,严格按照这个顺序装,可以避免返工,避免一步错就必须重装系统
3.2 安装配置
参照我的另一篇文章《Ubuntu 16.04+1080Ti机器学习基本环境配置》,安装以下软件
A、先安装 CUDA,注意不要选择最新的 9.2 版本,因为 tensorflow 还不支持这个最新的版本,我们选择 9.0 版本的就好,
B、安装tensorflow,同样参考上述文章,注意要先配置 pip源 。这里我们默认下载的最新版本是 1.8 版本的。
C、最后安装 cuDNN
四、验证
4.1、确定大版本
根据提示的错误信息,例如提示找不到 libcudnn.so.x 或者 libcublas.so.x,那么这个x代表的数字信息就是我们要安装的 cuDNN 的版本,
4.2、确定大版本下的CUDA版本
在https://developer.nvidia.com/rdp/cudnn-download下载对应的版本,先看上面说的大版本,再看对应的CUDA 版本,例如找不到libcudnn.so.7,则安装 v7 大版本的 cuDNN,而我们已经安装的CUDA版本是 CUDA9.0,所以我们应该下载v7 大版本下对应的 CUDA9.0版本,即DownloadcuDNN v7.1.4 (May 16, 2018), for CUDA 9.0版本,
4.3、下载文件
下载其下的cuDNN v7.1.4 Library for Linux
安装完成后,验证方法参照上述提到的文章
如此一般可以解决问题
尊重劳动成果,转载请注明出处,本文链接:https://blog.csdn.net/MahoneSun/article/details/80809042
(转载)CUDA、tensorflow与cuDNN的版本匹配问题的更多相关文章
- CUDA、tensorflow与cuDNN的版本匹配问题【转】
本文转载自:https://blog.csdn.net/MahoneSun/article/details/80809042 一.问题现象 CUDA.tensorflow 与 cuDNN有版本匹配的问 ...
- CUDA和TensorFlow的版本匹配问题
CUDA和TensorFlow的版本匹配问题 部分转载自博客:https://blog.csdn.net/MahoneSun/article/details/80809042 列举一些CUDA和Ten ...
- TensorFlow 与cudnn版本不匹配问题
log:Loaded runtime CuDNN library: 7.1.4 but source was compiled with: 7.2.1. 我安装的事cuda 9.0 cudnn 7. ...
- win7+cuda+anaconda python+tensorflow-gpu+keras安装成功版本匹配汇总
win7+cuda+anaconda python+tensorflow-gpu+keras安装成功版本匹配汇总 2019-09-20 15:06:03 wyx100 阅读数 38更多 分类专栏: M ...
- 深度学习 GPU环境 Ubuntu 16.04 + Nvidia GTX 1080 + Python 3.6 + CUDA 9.0 + cuDNN 7.1 + TensorFlow 1.6 环境配置
本节详细说明一下深度学习环境配置,Ubuntu 16.04 + Nvidia GTX 1080 + Python 3.6 + CUDA 9.0 + cuDNN 7.1 + TensorFlow 1.6 ...
- Ubuntu 16.04 + CUDA 8.0 + cuDNN v5.1 + TensorFlow(GPU support)安装配置详解
随着图像识别和深度学习领域的迅猛发展,GPU时代即将来临.由于GPU处理深度学习算法的高效性,使得配置一台搭载有GPU的服务器变得尤为必要. 本文主要介绍在Ubuntu 16.04环境下如何配置Ten ...
- win10 用cmake 3.5.2 和 vs 2015 update1 编译 GPU版本(cuda 8.0, cudnn v5 for cuda 8.0)
win10 用cmake 3.5.2 和 vs 2015 update1 编译 GPU版本(cuda 8.0, cudnn v5 for cuda 8.0) 用vs 2015打开 编译Release ...
- Win10 x64 + CUDA 10.0 + cuDNN v7.5 + TensorFlow GPU 1.13 安装指南
Win10 x64 + CUDA 10.0 + cuDNN v7.5 + TensorFlow GPU 1.13 安装指南 Update : 2019.03.08 0. 环境说明 硬件:Ryzen R ...
- Ubuntu16.04+GTX 1080Ti+CUDA 8.0+cuDNN+Tesnorflow1.0深度学习服务器安装之路
0.安装背景 系统:ubuntu 16.04 内核:4.4.0-140-generic GPU:GTX 1080Ti nvidia驱动版本: 384.111 cuda: CUDA 8.0 深度学习库c ...
随机推荐
- webpack中,require的五种用法
a.js: module.exports = function(x){ console.log(x); } 一,commonjs同步: var b = require('./a');b('你好')// ...
- 关于PreparedStatement.addBatch()方法 (转)
Statement和PreparedStatement的区别就不多废话了,直接说PreparedStatement最重要的addbatch()结构的使用. 1.建立链接,(打电话拨号 ) Connec ...
- 2015.10.11(js判断鼠标进入容器的方向)
判断鼠标进入容器的方向 1.前几天在万圣节专题项目中用到了鼠标坐标page事件,随着鼠标背景图片移动形成有层次感的效果,但page事件在IE低版本不支持,所以还要做兼容.在研究page事件同时无意中想 ...
- android极光推送
版权声明:本文为博主原创文章,未经博主允许不得转载. Android开发记录18-集成推送服务的一点说明 关于推送服务,国内有很多选择,笔者也对它们进行了一个详细的对比,一般我们产品选择推送服务主要考 ...
- 微信小程序 --- 下拉刷新上拉加载
查看文档看到:page()函数注册页面的时候,有 onPullDownRefresh 监听用户下拉动作,onReachBottom 页面上拉触底事件的函数. 在小程序里,用户顶部下拉是默认禁止的,我们 ...
- python中的configparser类
Python中有ConfigParser类,可以很方便的从配置文件中读取数据(如DB的配置,路径的配置),所以可以自己写一个函数,实现读取config配置. config文件的写法比较简单,[sect ...
- zabbix_server部署,启动,及端口未监听问题
安装 下载地址:wget https://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.2.6/zabbix-3 ...
- 全角半角符号引发的Entity Framework奇遇记
SQL Server的SQL查询不区分大小写,而LINQ查询区分大小写,所以在写LINQ代码时需要注意的是——如果这段LINQ代码将会被Entity Framework解析为SQL语句(LINQ to ...
- python问答模块
""" 该模块功能:获取用户的输入文本,通过输入文本和数据库中的关键主题文本相比较, 获取最佳的回答内容 """ import xlrd i ...
- 修改mysql的字符集和默认存储引擎
转自:http://blog.csdn.net/wyzxg/article/details/8779682 author:skatetime:2012/05/18 修改mysql的字符集和默认存储引擎 ...