背景介绍:新机器2080ti的显卡,安装gpu版本pytorch
(后来又装了一台2张3080ti的机器)
本文参考:
1 Ubuntu16.04 RTX2080 安装NVIDIA驱动+cuda10.0+cudnn7.3.1
https://blog.csdn.net/qq_39418067/article/details/87978848
2 Ubuntu16.04安装NVIDIA驱动、实现GPU加速
Ubuntu16.04安装NVIDIA驱动、实现GPU加速_zhang970187013的博客-CSDN博客
1 安装anaconda
1 上官网下载anaconda
这是官网地址:
Anaconda | Individual Edition
https://www.anaconda.com/products/individual
https://www.anaconda.com/distribution/#download-section选择3.7的python ps:有线下载也是比较慢,等着吧
一定要安装anaconda这个可以分开不同的环境,
让不同版本gpu或者cpu的tensorflow, pytorch共存。
conda管理环境很方便:Conda常用命令整理---创建环境----conda create --name your_env_name python=3.7_如何利用html码转载别人的博客-CSDN博客_conda create
2 安装Anaconda
这个比windows简单,一条命令。
首先切换到anaconda安装包的路径,在该路径下执行指令:
sh Anaconda3-5.0.1-Linux-x86_64.sh #后边的文件名称是你的安装包的名称
PS:再此之后需要按enter或者yes等按键,需要重新开启终端,否则会如图:
重新开启终端,正常,已经是python3.7了
2 安装nvidia显卡驱动-失败篇
(这步我没有安装成功,装cuda的时候会带有这个驱动,可以先跳过安装nvidia这步骤,但是我比较一根筋,看了另外一个安装显卡驱动的教程成功了,
请看 3再次安装nvidia显卡驱动-成功篇)
1 查看自己电脑显卡型号:RTX2080Ti
2 nvida官网下载对应自己显卡的驱动: 官方 GeForce 驱动程序 | NVIDIA
查找:
3 首先查看自己电脑自己电脑支持的驱动版本:
sudo apt-cache search nvidia*
NVIDIA驱动官方地址 官方 GeForce 驱动程序 | NVIDIA
3 安装显卡驱动
1 进入下载的.run文件所在位置打开终端
$ sudo sh NVIDIA-Linux-x86_64-430.50.run 但是报错了
ERROR: You appear to be running an X server; please exit X before For further details, please see the section INSTALLING THE NVIDIA DRIVER in the README available on the Linux driver download page at www.nvidia.com.错误:您似乎在运行X服务器;请退出X之前,为进一步的细节,请参阅安装NVIDIA驱动程序的自述部分在Linux驱动程序下载页面www.nvidia.com。
3 $ nvidia-smi 查看gpu情况 我好像没能安装好.run文件
4 验证是否安装好显卡
$ glxinfo|grep rendering
Yes表示安装好了,
运行后发现没安装mesa-utils,
$ sudo apt mesa-utils
安装了mesa-utils再输入:
3 再次安装nvidia显卡驱动-成功篇
我总结了下前面安装失败的可能原因:
1 可能原因一:安装的驱动版本太新
我下载了两个版本的驱动
NVIDIA-Linux-x86_64-430.50.run 和 NVIDIA-Linux-x86_64-410.93
我是在安装410的时候成功的
下面是当时的可选驱动:(此图是后来补充的,当时我最初下载时,是有410版本的)
2 可能原因二:ubuntu 是UEFI模式启动的,但是在BIOS中却打开了Security Boot选项
(此法是在一片博客上面看到的,非常有可能是这个问题,博客=>
Ubuntu16.04 安装NVIDIA英伟达驱动教程 及常见几种报错Error的解决方案_ZeroZone零域的博客-CSDN博客)
就是安装完仍不能nvidia-smi,解决办法是去boot里将secureboot 设置成disable,这步操作完nvidia-smi就有结果了
正确的做法是禁用该项,如图:
开机时候按f1进入此界面,中“安全引导”,也就是英文“Security Boot”这里被我关闭(disable)了(圆点在左边)
如果不使用此法,会在下面的 步骤8:一直选择它默认的那个选项就好 中
这部分遇到让你输入private key 的问题,我并不知道要输入什么,尝试了密码也不行,只能强制关机,
但是禁用Security Boot选项会让安装过程非常简单
0 事前准备:f1进入bios,将“Security Boot”这里关闭(disable) 按照上面原因二去做
0 查看自己电脑显卡型号:RTX2080Ti
首先查看自己电脑自己电脑支持的驱动版本:
sudo apt-cache search nvidia*
nvida官网下载对应自己2080ti显卡的驱动: 官方 GeForce 驱动程序 | NVIDIA
查找:
我感觉这步骤没有任何参考意义,因为显示的驱动在下面可选驱动里面并没有,可选的都是410以上版本
NVIDIA驱动官方地址 https://www.geforce.cn/drivers对应2080ti显卡可选驱动(此图是后来补充的,当时我最初下载时,是有410版本的,结论:尽量下载老版本)
1 删除原有驱动(可选):$ sudo apt-get remove --purge nvidia*
我在删除的时候就提示我没有原有的驱动。
2 禁用nouveau,安装NVIDIA需要把系统自带的驱动禁用
打开文件:sudo gedit /etc/modprobe.d/blacklist.conf
在文本最后添加以下内容:
blacklist nouveau
option nouveau modeset=0
然后保存退出
重新生成内核initramfs:
执行:sudo update-initramfs -u
3 重启,命令行输入:lsmod | grep nouveau
没有任何输出的话就代表禁用成功。
4 安装NVIDIA驱动程序(ps:准备另一台电脑,用来看教程或者是查找需要输入的命令)
禁用图形界面服务:sudo service lightdm stop
5 进入非图形界面: 按Ctrl+Alt+F1进入命令行,输入用户名密码登录(通过Ctrl+Alt+F7可返回界面)
6 给文件赋予执行权限
下载的是.run文件,首先给文件赋予执行权限,首先cd到下载目录:(重要的事情说三遍:注意参数、注意参数、注意参数)
打开所在的文件夹:cd ~/download/ 或者 放在home文件夹下
(这里应该写你当时把.run文件下载到的文件夹的路径,一般默认是下载文件夹.)
(如果你在这里出现错误,比如找不到文件,或者路径是中文的,可以尝试把.run文件移动到一个home下,这样可以直接打:cd /home/你的用户名/ 这样就可以打开了。)
赋予执行权限输入,选择比较老的版本410:sudo chmod a+x NVIDIA-Linux-x86_64-410_93.run
(敲自己下载的文件名字, 这是不会有什么输出。)
我下载了两个版本的nvidia驱动,430和410
尽量使用旧的版本吧,430我怎么也没办法成功安装,最终用410安装成功了
7 接着安装:sudo ./NVIDIA-Linux-x86_64-xxx.run –no-opengl-files
说明:
no-opengl-files 只安装驱动文件,不安装opengl文件。这个参数最重要
–no-x-check 安装驱动时不检查X服务
–no-nouveau-check 安装驱动时不检查nouveau
后面两个参数可不加。
8 接着就是一直选择它默认的那个选项就好。
9 挂载驱动: modprobe nvidia
10 查看是否已经安装好了:nvidia-smi
此时我在非图形界面(也就是在ctrl+alt+f1状态下)
输入可以看到nvidia-smi的界面,但是当时不能截图
下图是在reboot重启之后在终端里面再次输入得到。
11 重启 $ reboot
12 在终端输入 nvidia-smi
(但是此时还是有一些小问题,
第一次不知道是输入打错了,还是真的有问题,此界面没能出现,
在我就要放弃的时候,我再次打开终端输入,显示下面界面,表示驱动安装成功)
成功安装之后可以开心的进入下面的环节~
13 打开图形界面
可以打开图形界面了:$ sudo service lightdm start
后面的安装直接在终端即可。
4 下载安装cuda文件-.run文件失败篇
(这步我没有安装成功,下载的10.1版本安装不成功,可以直接跳过,请看:
5 再次下载安装cuda文件-.deg成功篇)
1 cuda下载网址:
Accelerated Computing Tools | Developer
我下载10.1安装失败
下载10.0
找到老版本还挺费劲
下拉找到 documentation
点击右上角older版本
选择10.0版本
2 选择下载
10.0版本
wget http://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.run sudo sh cuda_10.1.243_418.87.00_linux.run
3 在终端运行第一条指令:第二条等会再运行
wget http://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.run
4 下载得到.run文件
cuda_10.1.243_418.87.00_linux.run
5 改变第二条指令如下:
wget http://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.run
sudo sh cuda_10.1.243_418.87.00_linux.run --tmpdir=/home/nk/CUDA/
$ sudo sh cuda_10.1.243_418.87.00_linux.run --tmpdir=/home/nk/CUDA/
CUDA是自己建立的文件夹,把CUDA安在这个位置
这里加 --tmpdir 主要是直接运行后,会提示空间不足的问题, 后面应该填自己下载之后文件所在的路径,
我直接放在了home下, 这时会出现很长的声明,一直按enter键,把声明读完,然后就可以进行选择了。
如下图:
6 新版本10.1的cuda如下图选择:
注意这里第一个不安装NVIDIA Driver, 选择X
上下键,换选项,按回车选择,
6 老版本的cuda如下图选择:
注意这里第一个不安装NVIDIA Driver, 选择no
因为我是独立安装的NVIDIA 程序,所以进行上面的选择,安装完成后会出现个提醒,这是因为我在安装CUDA的时候没有选择安装驱动,提示需要安装驱动,忽略就行。
5 再次下载安装cuda文件-.deb成功篇
PS: 同学说cuda里面带有显卡的驱动,可以不用进行上面3、4的步骤
因为我已经安装过显卡驱动了,就这样继续往下
因为下载10.0版本的.run文件总是失败
1 从同学那里拷贝了.deb文件,自己下载也行(他用这个方法成功安装)
官网提供的安装四条指令如下:
Installation Instructions: | |
|
2 输入第一条指令
$ sudo dpkg -i cuda-repo-ubuntu1604-10-0-local-10.0.130-410.48_1.0-1_amd64.deb
报错如下:
按照上图上图终端提示输入指令:
$ sudo apt-key add /var/cuda-repo-10-0-local-10.0.130-410.48/7fa2af80.pub
再次输入第一条指令:
$ sudo dpkg -i cuda-repo-ubuntu1604-10-0-local-10.0.130-410.48_1.0-1_amd64.deb
3 输入第二条指令 sudo apt-key add /var/cuda-repo-
$ sudo apt-key add /var/cuda-repo-10-0-local-10.0.130-410.48//7fa2af80.pub
可以用tab进行补充~
4 输入第三条指令
$ sudo apt-get update
5 输入第四条指令
$ sudo apt-get install cuda
6 重启 $ reboot
7 加入环境路径:
打开.bashrc 文件:$ sudo gedit ~/.bashrc
打开文件后将下面两句话加入进去:
export LD_LIBRARY_PATH=$LDLIBRARY_PATH:/usr/local/cuda-10.0/lib64
export PATH=$PATH:/usr/local/cuda-10.0/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-10.0
8 保存 关闭,命令行输入,激活:$ source ~/.bashrc
PS:是“/.” /在前
但是会遇到如下问题: 1 设置数据失败 2找不到文件
此博客说下述警告没有影响: https://blog.csdn.net/sandalphon4869/article/details/100765858
PS:$ source ~/.bashrc
是“/.”
/ 在前输入正确,就不会有下图的找不到文件
9 验证是否安装好
$ nvcc --version 输出CUDA的版本信息
下图表示成功~
a. 在source ~/.bashrc正确的情况下,会如下
b. 在source ~./bashrc不正确的情况下,会如下
根据终端提示进行: $ sudo apt install nvidia-cuda-toolkit
过程比较慢,稍等,超级慢...
6 安装cudnn文件
(这个要比win下简单太多)
1.官网下载:https://developer.nvidia.com/rdp/cudnn-download
进入时需要登录,没有账户的话就注册一个(可以qq登录),进入即可。选择和自己cuda适配的版本
2 下载&安装
是一个压缩包.tgz格式,我下载完之后电脑自动跳出来提取,是一个cuda文件夹
这个是cuDNN 7.6.4 来适配 CUDA 10.0
我参考的博主版本是7.5,如下图
这与当前更新的情况有关,也不一定非得是老版本,老版本是真的不好找到
(但是,我拷贝了同学的cuDNN7.4.2.24,因为他的显卡是2080所以我觉得这个版本万无一失,其实是懒得下载了~)
3 提取cuDNN 7.4.2.24
$ tar -zxvf cudnn-10.0-linux-x64-v7.4.2.24.tgz
4 右击cuda文件夹,选择在终端打开
然后输入
$ sudo cp include/cudnn.h /usr/local/cuda/include/
$ sudo cp lib64/libcudnn* /usr/local/cuda/lib64/
$ sudo chmod a+r /usr/local/cuda/include/cudnn.h
$ sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
5 查看cudnn版本
$ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
看到下图,说明安装成功~
7 pip安装pytorch-成功篇
1 登录官网https://pytorch.org/
2 选择对应版本
cuda这块有3个选项 9.2, 10.1, None
ps:
注意我自己的cuda是10.0, 这里选择10.1,我猜想是10.x的版本都能是这个选项,None表示是cpu版本,
因为指令:
这里要写pip替换pip3不然会出现下面的错误
pip3 install torch torchvision
3 验证是否安装成功
在python
import torch
但是发现不行
4 我更换了指令
$ pip install torch torchvision
(默认会装最新的torch,这次我的是pytorch1.3.1)
(建议控制版本pip install torch==1.0 torchvision)
特别注意这里是pip不是pip3就成功了,我参考了我的另外一篇博客
https://blog.csdn.net/zjc910997316/article/details/101234706当时我是在macbook上面安装的cpu版本的pytorch就与到了这个问题,
5 遇到问题:nvida cuda 版本太老,
这个问题也可以理解自己的pytorch太新 1.3.0
这是因为安装指令是 pip install torch torchvision
解决办法:装pytorch1.0
pip install torch==1.0 torchvision
The NVIDIA driver on your system is too old (found version 10000)可能的原因_昌山小屋的博客-CSDN博客
AssertionError:
您系统上的NVIDIA驱动程序太旧了(发现版本10000)。
请更新你的GPU驱动程序下载和安装一个新的
来自URL的版本:http://www.nvidia.com/Download/index.aspx
或者,到https://pytorch.org安装
用您的版本编译的PyTorch版本
CUDA的司机。
AssertionError:
The NVIDIA driver on your system is too old (found version 10000).
Please update your GPU driver by downloading and installing a new
version from the URL: http://www.nvidia.com/Download/index.aspx
Alternatively, go to: https://pytorch.org to install
a PyTorch version that has been compiled with your version
of the CUDA driver.
8 conda安装pytorch-失败篇
请看 7 pip安装pytorch-成功篇
1 登录官网https://pytorch.org/
得到如下指令:$ conda install pytorch torchvision cudatoolkit=10.1 -c pytorch
3 更换源
Ubuntu 16.04 安装gpu版本的pytorch_一只蛋糕糕的博客-CSDN博客
conda config --add channels https://repo.continuum.io/pkgs/free/
conda config --add channels https://repo.continuum.io/pkgs/main
conda config --set show_channel_urls yes
4 改为: $ conda install pytorch torchvision cudatoolkit=10.0 -c pytorch
但是下载到一半就失败了,可能是conda的源不好用
9 查看cuda cudnn版本
1 查看cuda cudnn版本
cat /usr/local/cuda/version.txt
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
2.安装好anaconda
3.配置anaconda的环境变量(如果输入conda提示:未找到命令,则需要这一步,配置环境变量)
4.更换源 ps:未验证是否有用
conda config --add channels https://repo.continuum.io/pkgs/free/
conda config --add channels https://repo.continuum.io/pkgs/main
conda config --set show_channel_urls yes
5.创建conda环境
conda create -n pytorch(环境名)python=3.5
6.进入创建好的环境
conda activate pytorch(环境名)
7.安装cuda对应版本的torch
conda install pytorch torchvision cuda90 -c pytorch