记录自己 ubuntu18.04 安装 pytorch 的心得, anaconda3-5.2 已经安装好, 这里不再详述.
目录
1.CPU 版本 Pytorch 安装
2.GPU 版本 Pytorch 安装
3. 相关网址及总结
1.CPU 版本 Pytorch 安装
CPU 版本的 pytoch 安装比较简单, 在 Pytorch 官网中选择 python 版本, 运行 conda 或者 pip 命令即可, 如下图所示. 注意, 为了方便多个 Python 版本的管理, 通常需要在 anaconda 中创建新的环境空间.
2.GPU 版本 Pytorch 安装
GPU 版本的 pytorch 安装比较复杂, 在安装 pytorch 之前, 通常需要安装显卡驱动, cuda 和 cudnn,CUDA 是 NVIDIA 推出的用于自家 GPU 的并行计算框架, 也就是说 CUDA 只能在 NVIDIA 的 GPU 上运行; cuDNN(CUDA Deep Neural Network library): 是 NVIDIA 打造的针对深度神经网络的加速库, 是一个用于深层神经网络的 GPU 加速库. 如果你要用 GPU 训练模型, cuDNN 不是必须的, 但是一般会采用这个加速库. CUDA 是必须的, cudnn 是可选的.
通常需要考虑:
(1)检查显卡型号是否支持 GPU 运算
检查方法: 终端输入
Ubuntu-drivers devices
得到以下结果:
图中,"model" 对应的就是电脑显卡型号,"driver" 中后面带有 "recommanded" 就是推荐的显卡驱动型号. 根据显卡型号到英伟达官网查询是否支持 GPU.
网站显示如下:
先选择 "CUDA GeForce and TITAN Products", 再看具体型号, 电脑 GPU 为 GTX 1050, 支持 GPU 运算.
(2)安装显卡驱动
确定显卡支持 GPU 运算后, 接下来需要安装显卡驱动, 目前尝试过两种安装方法, 都成功了.
安装方法一:
系统 "软件和更新","附加驱动", 选择推荐的驱动安装.
安装方法二:
运行以下命令, 安装所有驱动
sudo Ubuntu-drivers autoinstall
或者只安装推荐的驱动
sudo apt install nvidia-435
判断驱动是否安装成功
方法一:
终端输入命令
sudo nvidia-smi
显示以下信息则表示安装成功
方法二:
系统设置查看 "图形" 信息, 变为英伟达的显卡类型即可.
(3)GCC 降级
CUDA 9.0 仅支持 GCC 6.0 及以下版本, 而 Ubuntu 18.04 预装 GCC 版本为 7.3, 需要手动降级.
安装 4.8 版本的 g++ 和 gcc, 命令如下:
- sudo apt-get install gcc-4.8
- sudo apt-get install g++-4.8
装完后进入到 / usr/bin 目录下, 链接到低版本, 命令如下:
- sudo mv gcc gcc.bak #备份
- sudo ln -s gcc-4.8 gcc #重新链接
- sudo mv g++ g++.bak
- sudo ln -s g++-4.8 g++
检查是否修改成功, 命令:
- gcc --version
- g++ --version
显示结果如下, 则修改成功.
(4)安装 cuda
cuda 和 cudnn,pytorch 版本之间要保证对应, 能够支持. 以下网址中有之前各版本的 cuda 下载(https://developer.nvidia.com/cuda-toolkit-archive), 本文选择的是 cuda9.0, 根据系统环境选择合适的版本下载, 有补丁的连补丁一同下载. 关于 Ubuntu 系统一项, 记住一个原则: 高版本兼容低版本. 即 cuda9.0 只有 14.04 和 16.04 两个选项, 但 18.04 版本兼容这两个版本, 所以 cuda9.0 也可以用于 18.04 版本的 Ubuntu.
下载完成后, 在下载路径下执行命令
sudo sh cuda_9.0.176_384.81_linux.run
安装过程中, 以下选项选择 no, 其余选择 yes 或者默认.
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 352.39? ((y)es/(n)o/(q)uit): n
此外, 安装结束前, 会出现 warning:In complete Installation, 可以忽略.
- ***WARNING: Incomplete installation! This installation did not install the CUDA Driver. A driver of version at least 384.00 is required for CUDA 9.0 functionality to work.
- To install the driver using this installer, run the following command, replacing <CudaInstaller> with the name of this run file:
- sudo <CudaInstaller>.run -silent -driver
- Logfile is /tmp/cuda_install_4242.log
随后执行以下命令安装补丁:
- ?
- sudo sh cuda_9.0.176.1_linux.run
- sudo sh cuda_9.0.176.2_linux.run
- sudo sh cuda_9.0.176.3_linux.run
- sudo sh cuda_9.0.176.4_linux.run
安装完成后, 打开. bashrc 文件, 在终端输入:
sudo gedit ~/.bashrc
在文件的末尾添加下面两行, 注意修改成你的安装路径:
- export PATH="/usr/local/cuda-9.0/bin:$PATH" #这里添加路径出错的话最好加上双引号把路径括起来, 这里已经加上了双引号
- export LD_LIBRARY_PATH="/usr/local/cuda-9.0/lib64:$LD_LIBRARY_PATH"
测试 cuda 是否安装成功:
先重启终端, 随后执行命令:
?
nvcc -V
之后, 编译 CUDA Samples, 注意改为自己的安装路径和版本:
- cd NVIDIA_CUDA-9.0_Samples/0_Simple/vectorAdd
- make
- ./vectorAdd
出现下面的 Test PASSED 代表 CUDA 安装成功.
(5)安装 cudnn
安装的 cudnn 版本要与 cuda 版本对应, 注册英伟达账号后, 登陆以下网站选择相应的版本下载, 这里选择的是 cudnn-9.0-Linux-x64-v7.6.0.64.
由于下载的是. solitairetheme8 格式的压缩文件, 在下载路径下执行命令:
- cp cudnn-9.0-Linux-x64-v7.6.0.64.solitairetheme8 cudnn-9.0-Linux-x64-v7.6.0.64.tgz
- tar -xvf cudnn-9.0-Linux-x64-v7.6.0.64.tgz
先转化为 tgz 格式, 再解压. 随后进入解压路径, 执行:
- cd cuda
- sudo cp lib64/*/usr/local/cuda/lib64/
- sudo cp include/*/usr/local/cuda/include/
- sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
注: 在安装过程中, 我将所有的下载文件剪切到主文件夹中, 再运行指令, 避免频繁切换路径. 安装完成后, 这些文件可以删除.
(6)安装 pytorch
安装 pytorch 的时候, 同样需要考虑与 cuda 版本对应, 以下网址中 (https://pytorch.org/get-started/previous-versions/) 有历史版本的 pytorch, 选择合适的版本, 并执行 conda 或者 pip 命令即可. 这里选择的是 v1.1.0.
注: 安装 pytorch 时, 和 CPU 版本一样, 新建 python 环境空间.
3. 相关网址及总结
(1)自己安装过程中及本博客, 主要参考以下博客:
Ubuntu18.04 下安装深度学习框架 Pytorch(GPU 加速)
解压. solitairetheme8 文件
CUDA 版本, 显卡驱动, Ubuntu 版本, GCC 版本之间的对应关系
GPU,CUDA,cuDNN 的理解
(2)安装思路
安装 anaconda, 显卡是否支持, 安装显卡驱动, GCC 降级, 安装 cuda, 安装 cudnn, 新建 python 环境, 安装 pytorch
版本对应: 系统版本(高兼容低),cuda 版本, cudnn 版本, pytorch 版本
关于版本对应关系, 可以到上文提到的网址中查看.
(3)下载网址
cuda 最新版下载:
https://developer.nvidia.com/cuda-downloads
cuda 历史版本下载:
https://developer.nvidia.com/cuda-toolkit-archive
pytorch 最新版下载:
https://pytorch.org/
pytorch 历史版本下载:
https://pytorch.org/get-started/previous-versions/
cudnn 最新版下载:
https://developer.nvidia.com/cudnn
cudnn 历史版本下载:
https://developer.nvidia.com/rdp/cudnn-archive
anaconda 最新版下载:
https://www.anaconda.com/distribution/
anaconda 历史版本下载:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
- ?
- ?
来源: http://www.bubuko.com/infodetail-3382665.html