写在前面: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. AI一分钟 |“最抢手”毕业生排名出炉:清华没进前三?支付宝将支持iPhone X刷脸
  2. 【XSY2719】prime 莫比乌斯反演
  3. 剑指offer(三):从尾到头打印链表
  4. 对SPA(单页面应用)的总结
  5. POJ 1577 Falling Leaves(二叉查找树)
  6. 湖南工业大学在线计算机作业答案,湖南工业大学《计算机组成原理》试题集,共7份,有部分答案...
  7. Python产生随机数(转)
  8. JSP中include指令和include动作的区别
  9. 财务人员工资那么低,财务工作真的有价值吗?
  10. 《深度学习》李宏毅 -- task4深度学习介绍和反向传播机制
  11. 有趣的算法(八):3分钟看懂选择排序(C语言实现)
  12. java用一条语句判断一个整数是不是2的整数次方
  13. Mockjs - 前端模拟请求数据生成器
  14. [unity3d插件]插件效果以及下载
  15. java 生成印章_印章生成
  16. Unity 5.4 公开测试版发布:增强的视觉效果,更佳的性能表现
  17. Multi-Object Trackers
  18. 玩苹果为什么要越狱?
  19. poj-1069(三角形和六边形)(转)
  20. 解决:(iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 8082 -j DNAT --to-destin

热门文章

  1. 200G光模块有哪些?详解易飞扬200G QSFP-DD SR8光模块
  2. 爬取吉他谱并生成pdf
  3. android之声音管理器AudioManager的使用
  4. 计算机学院生物信息学,生物信息学专业本科生培养方案-哈尔滨工业大学计算机学院.pdf...
  5. 移动互联网巨头扫尾战:流量黑洞效应愈演愈烈
  6. Face Model Compression by Distilling Knowledge from Neurons论文初读
  7. 扩招了!中科大软件学院今年【扩招149人】!
  8. 中国哪所大学的理论计算机水平高,在计算机领域,中国哪所大学最牛?
  9. HashMap源码解析——基于JDK1.8
  10. 【网络基础】通俗易懂的搞明白什么是子网掩码(小白向)