保姆级教程:如何让30系显卡用上 Tensorflow 1.15.4

2021-01-06 22:55:43 32点赞 79收藏 14评论

创作立场声明:原创

前言

相较于20系显卡,30系显卡性能的提升非常大。因此近期本人入手了一块3090。

微星(MSI)超龙GeForceRTX3090SUPRIMX24G超旗舰电竞游戏设计智能学习电脑独立显卡15999元京东去购买

然而30系显卡目前只支持CUDA11以上的版本。虽然Tensorflow和Pytorch最新版本已经适配了CUDA11.1,但是本人还有一些代码需要运行在Tensorflow 1.X版本上。网上已经有些教程了,然而个人感觉过程不太详细,所以这里总结一下从UBUNTU安装完成到Tensorflow 1.15.4配置完成的整个过程。

前提:必须使用Linux系统,目前没有研究出Windows的安装方法。推荐使用Ubuntu18.04。

过程

Ubuntu为刚安装完成的状态,没有进行任何设置。

配置环境所需要的安装包(ed2t )

1.下载cuda11.1和cudnn8.0.4,

可以自行在官网下载,也可以从上面的链接直接下载。记住下载目录,最好放在用户目录下(/home/用户名/),方便后面使用。

2.禁用nouveau

在终端输入

sudo gedit /etc/modprobe.d/blacklist.conf

在blacklist.conf的最后添加:

blacklist nouveau

blacklist lbm-nouveau

options nouveau modeset=0

alias nouveau off

alias lbm-nouveau off

保存并退出


3.禁用nouveau内核模块

echo options nouveau modeset=0

sudo update-initramfs -u

重启(sudo reboot). 如果运行如下指令没用打印出任何内容, 则禁用nouveau成功.

lsmod | grep nouveau


4.关闭用户图形界面,并安装zhcon(如果出现中文乱码)

sudo systemctl set-default multi-user.target

sudo apt-get install zhcon

sudo adduser $(whoami) video

sudo reboot



5.安装显卡驱动和cuda11.1

三种安装方式:

a.runfile(local) b.deb(local) c.deb(network)

保姆级教程:如何让30系显卡用上 Tensorflow 1.15.4

推荐用runfile方式,不管之前有没有装驱动,这里先卸载原有驱动

sudo zhcon --utf8

sudo apt-get remove --purge nvidia*

sudo apt-get update

sudo apt-get install dkms build-essential linux-headers-generic

运行安装文件

sudo chmod a+x cuda_11.1.0_455.23.05_linux.run

sudo ./cuda_11.1.0_455.23.05_linux.run

运行以后会看到协议页面,输入 accept

保姆级教程:如何让30系显卡用上 Tensorflow 1.15.4

然后进入安装选项页面,这里要关闭OpenGL!!!!

Options - Driver Options- Do not install any of the OpenGL-related driver files

保姆级教程:如何让30系显卡用上 Tensorflow 1.15.4

保姆级教程:如何让30系显卡用上 Tensorflow 1.15.4

保姆级教程:如何让30系显卡用上 Tensorflow 1.15.4

然后选择 Done 退回到初始页面,选择 Install 开始安装。安装完成后开启用户图形界面。

sudo systemctl set-default graphical.target

sudo reboot

查看NVIDIA显卡驱动是否安装完成 nvidia-smi


6.配置路径(这里还包括anaconda3,texlive,matlab)

打开bashrc

sudo gedit ~/.bashrc


在最后添加路径

(这里的cuda路径不加版本号,以便后续升级cuda版本的时候不需要重新配置)

(这里还包含了anaconda3,texlive,matlab2020b)

export CUDA_HOME=/usr/local/cuda

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${CUDA_HOME}/lib64

export PATH=${CUDA_HOME}/bin:${PATH}


export PATH="/home/用户名/anaconda3/install/bin:$PATH"


export MANPATH=${MANPATH}:/usr/local/texlive/2020/texmf-dist/doc/man

export INFOPATH=${INFOPATH}:/usr/local/texlive/2020/texmf-dist/doc/info

export PATH=${PATH}:/usr/local/texlive/2020/bin/x86_64-linux


export PATH=/usr/local/Polyspace/R2020b/bin:$PATH


保存,退出,输入 source ~/.bashrc 使其生效。


验证CUDA版本,会输出版本号

nvcc --version

cat /proc/driver/nvidia/version


7.安装cudnn 8.0.4

下载cuDNN Library for Linux(x86_64)并解压,在文件所在的路径下打开终端

sudo cp cuda/lib64/* /usr/local/cuda/lib64/

sudo cp cuda/include/* /usr/local/cuda/include/

sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*


最后验证cudnn是否配置好并输出版本号:

cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2


8.安装anaconda3,创建并进入虚拟环境

conda create -n name python=3.6.8

conda activate name


9.安装tensorflow

运行requirements.sh安装安装nvidia-TensorFlow对应的依赖包:

sh requirements.sh

验证库文件

pip list | grep nvidia

保姆级教程:如何让30系显卡用上 Tensorflow 1.15.4

测试Tensorflow是否安完成

python -c 'import tensorflow as tf; print(tf.__version__)'

保姆级教程:如何让30系显卡用上 Tensorflow 1.15.4


总结

测试了一下,Tensorflow 1.15.4可以向下兼容到 Tensorflow1.13.1版本,再往下就没测试。


展开 收起
14评论

  • 精彩
  • 最新
  • 为啥不用 tf2

    校验提示文案

    提交
    因为tf1和tf2的代码不兼容……

    校验提示文案

    提交
    收起所有回复
  • 深度学习已经卷到zdm这来了

    校验提示文案

    提交
  • 还不如写一篇文章,叫做:如何原价买到3070/3080显卡 [皱眉]

    校验提示文案

    提交
  • 很好,我选择pytorch [献黄瓜]

    校验提示文案

    提交
  • requirements.sh怎么弄得呀

    校验提示文案

    提交
  • 难得见到的知识型文章

    校验提示文案

    提交
  • 显卡不用来玩游戏,都属于歪门邪道

    校验提示文案

    提交
  • 虽然不知道你在说什么。但是感觉很高深。。。

    校验提示文案

    提交
  • 装这个干啥用的?

    校验提示文案

    提交
    跑模型,训练数据

    校验提示文案

    提交
    收起所有回复
  • 为了运算,用法不一样而已。市售GPU算力大于CPU

    校验提示文案

    提交
  • 科学烧钱的方法

    校验提示文案

    提交
  • 我感觉添加nvidia的源然后无脑aptitude install cuda比较省事

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
79
扫一下,分享更方便,购买更轻松