这篇博客写给所有具备一定环境搭建基础的同学。
一些具体的步骤我会省去,但会提醒所有我觉得重要的地方。
在摩拳擦掌自己尝试安装之前,阅读这篇文章可以建立一个比较清晰的脉络。
折腾了两天之后来写这篇博客,有些地方可能出现一两个手滑打错的地方,还请诸位加以鉴别,提出改正。
为了释放3080显卡(甚至是30系显卡)的全部算力,须用最新的
tf-nightly-gpu=2.6.0 (预览版tensorflow)
cuda=11.2
cudnn=8.1.0 (for cuda 11.2)
以及Linux (Ubuntu or Lubuntu >=18.04)
是的没错,我测试了windows上面的各种可能组合,速度都要比linux慢1/3!
1. cuda cudnn安装之前一定注意,在uninstall programme工具里面卸载掉所有和nvidia相关的软件!
cuda安装的时候,可以选择勾选是否安装驱动。这里我想说,显卡驱动版本不是特别重要。所以就用cuda自带的驱动也可。
2. 其实在win平台安装cuda要比Linux简单
因为修改环境变量的时候,可以直接找到
系统属性-高级设置-环境变量
对上下两个框分别进行路径添加(安装cuda的时候一般会自动添加一些,可以酌情手动添加),或修改(如替换不同版本的cuda文件夹)。
主要就是添加cuda相关的路径,如(x.x为对应版本,例如..\cuda10.0\)
..\cudax.x\bin ..\cudax.x\lib ..\cudax.x\include
以及解压缩cudnn之后得到的
..\cuda
到对应的path
3. 与其说安装cudnn不如说是,把cudnn压缩包里的文件都复制到cuda对应的文件夹。
官网可能出于方便用户自定义的考量,没有将以上两个软件完全融合。
这里特别贴上官方的教程,一步步来即可。英语不难,读一下吧。
验证cuda的时候,使用如下任意一种方法即可
https://blog.csdn.net/jhsignal/article/details/111398427
https://blog.csdn.net/weixin_42349295/article/details/112116057
https://zhuanlan.zhihu.com/p/139668028
4. 安装配置好cuda,cudnn之后,打开anaconda prompt,进行tf相关的安装
创建一个虚拟环境
conda activate --name xxx python==3.8
安装tf,这一步不要使用国内的镜像/源,比如中科院/清华/阿里/豆瓣之类的,因为tf的2.6.0预览版比较新,国内的库还没有及时更新。
pip install tf-nightly-gpu
接着安装你模型代码中一些需要的额外的package。
这一步为了防止包不兼容,还是最好使用pip进行不指定版本的默认安装,即
pip install PACKAGE
当然,只要不报错,你也大可按照自己需要的版本来。
5. 到这一步完成之后,基本上应该可以开始运行模型了。
你可能遇到的错误主要会出现在,你的代码与tensorflow 2.6.0与keras的三方兼容问题。
这里我先补充几点:
- 不要直接使用keras来import layers, models, regularizers, optimizers,请使用tensorflow.keras
- 使用 tensorflow.keras.layers import * 之后,CuDNNLSTM等等不再需要了。可以直接使用LSTM,但需要遵循以下要求来调用GPU:
第七步使用eager execution默认为打开状态,所以不需要特别设置。另外六步也多为默认参数,但为保证运行畅快,还是特别声明一下为好。
- 使用 tensorflow.keras.optimizers import * 之后,原本的例如adam变成了Adam,所以还请注意。
- 可以直接使用keras来import losses, metrics, backend, callbacks
- numpy版本需要为1.19或者1.20,还请各位尝试
如果遇到其他问题,可以留言,也可以针对性的查找相关解决使用最新tensorflow遇到bug的博客进行求解。
基本上,你所要做的事情同在windows上面几乎一摸一样,特别是从安装tf开始的步骤,因为conda python pip等在不同平台都是一样的。
我使用的平台,Lubuntu 18.04LTS,此与ubuntu 18.04无差,与v.16/20估计也差不多。
所以这里我简要报告一下你可能遇到的问题以及最有可能解决的方法:
- 显卡驱动,不需要去官网下载安装最新版本,可以直接使用系统自带的工具查找并安装合适的驱动版本。
- 可以先安装cuda cudnn成功之后,再安装显卡驱动。安装cuda cudnn之前,记住卸载清除干净nvidia相关包。
- 如果遇到显卡驱动安装之后,进入不了登陆界面,可以尝试先进入命令行界面,比如利用advanced-recovery mode-network enable,然后command line,进行显卡驱动的重装。
记住,使用系统推荐的驱动版本进行安装。
- 如果遇到登陆界面卡死,键盘鼠标无法输入的情况,可以参考
https://blog.csdn.net/Sean_csy/article/details/105875382