写在前面:tensorflow也可以用conda一条龙安装,如:

conda install tensorflow-gpu==2.1.0

会自动安装其他依赖包,包括cudatoolkit10.1和cudnn7.6,如果至此问题可以解决,下面的可以不用看了。
————————————————————————————————
记录一个折磨我三天的小(da)问题
很早以前就被cuda、cudnn、显卡驱动、TensorFlow、pytorch等等的版本之类的问题困扰,不同的代码可能会需要不同版本的包,直到有一天我使用了anaconda(见Ubuntu安装Anaconda),按不同代码的版本需求安装不同的包(见cuda、cudnn、pytorch、tensorflow安装)。平静了很久很久以后,又出现了一个新的问题。
有个代码之前能够成功运行,虽然这个环境的cuda、cudnn、TensorFlow版本一直都有问题。下面我记录一下我几个环境的包的版本。
环境A:TensorFlow-gpu1.7.0+cuda8.0+cudnn7.0.5
环境B:TensorFlow-gpu1.7.0+cuda8.0+cudnn7.0.5
环境C:TensorFlow-gpu1.7.0+cuda9.0+cudnn7.6.5
实际上环境A和环境B是一致的,根据TensorFlow、cuda、cudnn的版本对应关系(见cuda、cudnn、pytorch、tensorflow安装)TensorFlow1.7.0配套的应该为cuda9和cudnn7,环境C符合这个规则。
使用环境C运行代码报错:

E tensorflow/stream_executor/cuda/cuda_dnn.cc:396] Loaded runtime CuDNN library: 7650 (compatibility version 7600) but source was compiled with 7005 (compatibility version 7000).
If using a binary install, upgrade your CuDNN library to match.
If building from sources, make sure the library loaded at runtime matches a compatible version specified during compile configuration.

这个TensorFlow1.7.0需要的cudnn7的版本为cudnn7.0的,7.6不适用,于是我就装上cudnn7.0,代码如下:

 conda install cudnn=7.0.5 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/linux-64/

但是conda要强行将cuda9.0换成cuda8.0:

The following NEW packages will be INSTALLED:
cudnn:           7.0.5-cuda8.0_0     https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main    The following packages will be DOWNGRADED:
cudatoolkit:     9.0-h13b8566_0                                                              --> 8.0-3
Proceed ([y]/n)?

要装cudnn7.0只得选y,这样cuda就变成9.0了,无奈,就这样得到了环境A和B。
虽然这个版本对应有问题,但是可以运行。而且非常奇怪,即使分配了gpu,环境B只能用cpu运行tensorflow。而环境A只能用gpu运行tensorflow,即使我指定用cpu运行,也要找gpu。(确定两个环境的TensorFlow-gpu版本相同)
就这样我一直睁一只眼闭一只眼,没有管他们,直到昨天,环境A突然报错:

ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory

好家伙,又突然需要cuda9.0,就像一头沉睡的狮子,小丑在他身上跳了几个月的舞,也不知道被什么突然惊醒了。同样的代码,同样的环境,只隔一天就完全不能跑了。
cuda9.0和cudnn7.0.5又不能在conda环境中同时存在(不在conda环境中应该是可以共存,但是这样安装起来非常不方便也不便于管理),来回装了几遍cuda9.0和cudnn7.0和tensorflow1.7,都无济于事。
将tensorflow退回1.4,则报错:

ImportError: libcublas.so.6.0: cannot open shared object file: No such file or directory

cudnn7.1是conda环境中和cuda9.0兼容的最低版本,但是使用cudnn7.1也报错:

E tensorflow/stream_executor/cuda/cuda_dnn.cc:396] Loaded runtime CuDNN library: 7102(compatibility version 7100) but source was compiled with 7005 (compatibility version 7000).
If using a binary install, upgrade your CuDNN library to match.
If building from sources, make sure the library loaded at runtime matches a compatible version specified during compile configuration.

突然注意到tensorflow1.5-1.12这几个版本对应的都是cuda9和cudnn7,想到尝试tensorflow-gpu-1.8:

pip install tensorflow-gpu==1.8.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

成功,与cudnn7.1完美兼容,问题解决。
最终成功的环境:TensorFlow1.8.0+cuda9.0+cudnn7.1.2

TensorFlow1.8.0+cuda9.0+cudnn7.1.2相关推荐

  1. Win7 + tensorflow-gpu1.8.0 + cuda9.0 + cuDNN 7.0 + Python3.5.2 + vs2013安装教程

    #Win7 + tensorflow-gpu1.8.0 + cuda9.0 + cuDNN 7.0 + Python3.5.2 + vs2013安装教程 如需转载请标明出处:http://blog.c ...

  2. Ubuntu18.04两个Cuda(cuda10.0+cuda9.0)、两个Cudnn(cudnn7.3.1+cudnn7.0.5),并进行自由切换

    之前安装了CUDA10.0,Cudnn7.3.1,因为要跑keras-yolo3,没办法运行,需要使用CUDA9.0+cudnn7.0.5(要求是7.0.4,但是官网没办法进行下载,因此尝试了7.0. ...

  3. win10安装miniconda3+pytorch1.2.0+cuda9.2+cudnn7.6.5.32

    最近在实现FlowTrack(End-to-end Flow Correlation Tracking with Spatial-temporal Attention),子网络用到了FlowNet,实 ...

  4. Ubuntu16.04 + Cuda-9.0 + Cudnn-7.1.4 + TensorFlow1.8(极其简单)

    步骤 1.Ubuntu16.04 LTS 2.配置Nvidia显卡驱动 3.Cuda-9.0 4.Cudnn-7.1.4 5.TensorFlow1.8 1. Ubuntu16.04 LTS 安装Ub ...

  5. Ubuntu17.04+Nvidia GT 640LE+CUDA9.0+cuDNN7.05+Tensorflow1.5r0(GPU)+Anaconda5.01(python3.6)安装

    Ubuntu17.04+Nvidia GT 640LE+CUDA9.0+cuDNN7.05+Tensorflow1.5r0(GPU)+Anaconda5.01(python3.6)安装 一.详细的安装 ...

  6. 【cuda安装教程】GTX1050Ti+win10+cuda9.0+cudnn7.4.1安装过程记录

    GTX1050ti+win10+cuda9.0安装实录 其实之前已经安装过很多次cuda了,但是每次需要用其他功能的时候,总是会忘了一些安装过程中的一些参数设置,所以记录下来提醒自己也可以让大家参考一 ...

  7. 海思Hi3519AV100深度学习方案(一)darknet转caffmodel之caffe安装(基于Ubuntu16.04+python3.5+opencv3.4.0+cuda10.0)

    系列文章目录 海思Hi3519AV100深度学习方案(二)darknet转caffmodel之模型转换(yolov3+caffe+python3.5) 文章目录 系列文章目录 前言 一.系统已有环境检 ...

  8. Ubuntu 多版本Cuda(8.0,9.0)以及CuDnn安装

    转载自:https://www.jianshu.com/p/6a6fbce9073f 来源:博客园 博主:EwanRenton 教研室服务器多人使用,由于大家使用不同的框架,或者框架的版本不同,需要对 ...

  9. 固态、机械双硬盘+UEFI、APT+Win10、Ubuntu18.04LTS双系统+GTX 1080Ti+Cuda9.0+cudnn7.1.4+Tensorflow1.12

    固态.机械双硬盘+UEFI.APT+Win10.Ubuntu18.04LTS双系统+GTX 1080Ti+Cuda9.0+cudnn7.1.4+Tensorflow1.12 1.系统框架 1.1 在w ...

最新文章

  1. Iterative error correction of long sequencing reads maximizes accuracy and improves contig assembly
  2. amd860k能装黑苹果吗_黑苹果配置 篇六:黑苹果硬件选购指南之终篇--2019年8月
  3. python【蓝桥杯vip练习题库】ALGO-140 P1101(提货单)
  4. POJ1466 最大点权独立集
  5. 应聘腾讯,面试官和我聊了一个小时的人生
  6. leetcode 399. 除法求值(bfs)
  7. delphi datasnap断线后再次连接_电脑连接WiFi后经常出现断线断开连接问题的解决方法...
  8. qml 鼠标点击_QML ListView在鼠标点击时不会响应
  9. 如何给mac地址赋值_交换机工作基础——MAC地址表的构成与安全
  10. java多线程的写法三个线程_Java多线程的几种写法
  11. 20191021:(leetcode习题)乘积小于K的子数组
  12. mysql数据库实例
  13. 统一软件开发过程(rup)理解
  14. 网页截图小技巧——利用浏览器自带功能即可(无需安装插件)
  15. 2019美国数学建模大赛A+D题翻译
  16. 驭龙HIDS的简介,它开源了
  17. 【预研】关于互联网广告:半小时读懂互联网广告新生态
  18. Linux 交换分区
  19. 多线程堆排序算法C语言实现
  20. linux两个整数加减乘除,加减乘除运算符

热门文章

  1. Docker安装卸载教程
  2. Domino webservice开发实例
  3. python局域网控制电脑关机_局域网内计算机远程开机、控制和关机
  4. Java很难找工作了?
  5. 六大核心三个环节四力模型解析私域流量的经典打法,企业私域流量运营学习思维模型分享!
  6. 暴力破解移动硬盘密码
  7. 数字资产原力觉醒,颠覆性创新来自于Turing差价合约
  8. 负环——spfa判断负环的两种方式
  9. ApacheBench压测工具的安装和使用
  10. Java技术常见的英文缩写