Ubuntu18.04安装Pytorch

喜夏-厌秋 提交于 2020-01-12 02:50:00

记录自己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/

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!