欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

tensorflow2.2+cuda10.2+keras安装踩坑记录

程序员文章站 2022-07-12 09:37:30
...

描述

由于当初毕设使用的pytorch,故cuda直接装的最新版10.2(在此建议别装10.2,装其他低版本的如10.0),最近安装tensorflow2.2+keras的时候遇到了各种各样的问题,要是不记录一下感觉坑都白踩了。本人安装方式采用的是cmd命令窗,pip安装,建议装在anaconda的一个新建环境里

问题+解决办法

先打开cmd,**新建的环境,直接运行activate + 环境名,如:

activate tensorflow

然后就可以开始安装啦,直接运行:

pip install tensorflow-gpu==2.2.0
pip install keras

接下来是安装过程中遇到的各种问题,由于是事后总结所以报错的文字信息都没有记录下来,但会尽力描述:

timeout(whl文件下载过程中由于下载速度过慢,飙出一大段红字最后显示timeout)

  1. 建议换成默认使用清华镜像源(设置以后装包都会默认从该网站下载),直接运行:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
  1. 换成清华镜像源后仍然出现timeout的问题,可以延长timeout的时间,直接运行安装指令:
pip --default-timeout=100000 install --upgrade tensorflow-gpu==2.2.0
  1. 下载卡住或者太慢 (终极办法
    进入清华镜像源网页:https://pypi.tuna.tsinghua.edu.cn/simple/(点此进入)
    然后在网址输入栏的“simple/”后面加上要下载的包的名字,如https://pypi.tuna.tsinghua.edu.cn/simple/tensorflow-gpu(点此进入)
    进入后找到相应版本的whl文件,直接用浏览器下载
    然后运行pip install + whl文件路径,如:
pip install D:\Learning\tensorflow_gpu-2.2.0-cp37-cp37m-win_amd64.whl

安装cudnn

进入cudnn下载网站登录或者注册一下英伟达账号
找到合适的cudnn压缩包下载,下载完后解压,里面会有三个文件夹:
tensorflow2.2+cuda10.2+keras安装踩坑记录
把这三个文件夹里的文件复制到cuda安装目录里的相应文件夹里:
tensorflow2.2+cuda10.2+keras安装踩坑记录
然后cudnn就安装完成了

如果不幸装的是cuda10.2版本

目前tensorflow最高支持cuda10.1,当然如果已经装了10.2也不用非得重装低版本cuda(如果不嫌麻烦的话当然重装最好),我目前知道的两种解决方法:
我用的是第一种方法,改完后虽然运行的时候会有一堆warning,但还是可以正常运行。

第一种:把cuda安装目录bin文件夹下的cudart64_102.dll文件复制一份重命名为cudart64_101.dll
tensorflow2.2+cuda10.2+keras安装踩坑记录

第二种:修改cuda软链接,参考此文章https://blog.csdn.net/sinat_20174131/article/details/106807448

运行时出现一堆报错最后显示:Adding visible gpu devices: 0

这是安装完后第一次运行的情况,此时程序还在运行当中,只需要等待即可,我等了大概两分钟。两分钟之后才开始运行程序,此后再运行程序则无需等待。

版本对应问题

tensorflow、cuda、cudnn、keras之间都有版本对应的问题,建议在安装之前先确定分别要下载哪种版本的安装包,否则可能会像我一样出现各种版本不对应问题。如果不确定装哪个版本的话,按照如下顺序装应该不会有版本问题。
1.cuda:10.1版本或更低
2.cudnn:在下载页面根据cuda版本下载
3.tensorflow-gpu:2.2版本
4.keras:2.3.1版本

版本对应信息链接:
tensorflow和keras之间的版本对应关系
cudnn和cuda之间的版本对应关系
tensorflow和cuda之间的版本对应关系

分享一点装包的经验

1、如果只是在学习过程中临时用一下tensorflow,或者对运行速度要求不高,建议不要装gpu版,cpu版装上直接就能用。
2、装包或者装cuda建议尽量不要装最新版的,否则容易出各种版本问题。
3、安装环境的之前最好明确分别要装哪个版本的包,免得版本不对应要重装。
4、pytorch、tensorflow不同版本最好装在anaconda的不同环境里,要是装崩了大不了删环境重来,不会影响其他环境里的东西。