Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)

硬件环境
自己的笔记本电脑
CPU:i5-4210M
GPU:NVIDIA Geforce 940M

1 Anaconda3的安装与配置

1.1 下载

可以到Anaconda官网下载
历史版本:https://repo.anaconda.com/archive/
国内的下载速度可能比较慢,选择到清华大学开源软件镜像站下载。
我使用的python 3.6.9,下载对于的Anaconda版本是5.1.0版本在这里插入图片描述

1.2 安装

下载完之后是后缀.sh文件

在终端输入:

bash Anaconda3-5.1.0-Linux-x86_64.sh
Welcome to Anaconda3 5.0.1
 
In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue
>>> 按回车
#然后一直按回车到协议完毕
#出现:
Do you accept the license terms? [yes|no]
>>>输入yes
#下面就是问你安装目录,建议就是默认的安装路径,直接按回车
Anaconda3 will now be installed into this location:
/home/mayunteng/anaconda3
 
  - Press ENTER to confirm the location
  - Press CTRL-C to abort the installation
  - Or specify a different location below
 
[/home/mayunteng/anaconda3] >>> 按回车
#接下来就是等待安装完成
#注意安装完成以后会询问你是否把anaconda3的路径加到环境变量里去,一定要选yes,一定要选yes,一定要选yes。

1.3 切换默认Python版本

查看Python版本(此步为管理员操作,普通用户请跳过)
终端输入python查看版本,如果默认不是python3,则在终端输入:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150

执行完上述两行命令之后在终端输入python,如果第一行信息是3.6,则成功。效果图如下:
Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)_第1张图片
如果要切换到Python2,执行:

sudo update-alternatives --config python

1.4 添加环境变量

将Python添加到环境变量中.
如果在安装Anaconda的过程中没有将安装路径添加到系统环境变量中,需要在安装后手工添加.
第一步:打开bashrc文件.

vim ~/.bashrc

第二步:在文件末尾处添加以下语句

export PATH=/home/XXX/anaconda3/bin:$PATH    XXX为自己的用户名

在这里插入图片描述
(我的用户名是lirui,实际中要按照自己的用户名,这个也就是anaconda的安装目录)

1.5 使环境变量生效

让etc/profile文件修改后立即生效,
在终端输入:

source ~/.bashrc

至此,Anaconda安装成功!
如果没有成功,重启系统即可。
也可以在终端输入

echo $PATH

查看已有的环境变量 ,确认输出是否已经有Anaconda路径了。
终端输入python,可以看到有Anaconda出现,安装成功。
Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)_第2张图片

2 安装CUDA和CUDNN

2.1 NVIDIA驱动安装

在安装之前你要先查看你的电脑是否支持GPU运算,否则你也不用安装了。
拿着这个图形卡驱动到NAVIDIA官网去查是不是支持GPU运算。

网址是:https://developer.nvidia.com/cuda-gpus

打开后的界面大致如下,只要里边有你的型号就可以用GPU运算:
Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)_第3张图片

Ubuntu18.04自带了NVIDIA驱动,但是它没有安装完整,不能在终端使用nvidia-smi命令查看,在之后的CUDA编译测试里面也会出现问题,因此需要重新安装。重新安装的方式如下:

首先,检测你的NVIDIA图形卡和推荐的驱动程序的模型,在终端输入:

ubuntu-drivers devices

Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)_第4张图片
从中可以看到,这里有一个设备是Geforce 940M,对应的驱动是NVIDIA -440,所以安装440版本的驱动。安装驱动有两种方法:

  • 方法一、选择安装所有推荐的驱动.
sudo ubuntu-drivers autoinstall
  • 方法二、只安装其中一个驱动.
sudo apt install nvidia-440

这里我们选择第一种方式,安装完成后记得重启电脑!重启电脑!重启电脑!
最后验证是否安装成功,输入 sudo nvidia-smi
Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)_第5张图片
最好找到系统设置的“详细信息”部分,查看一下自己的图形卡是否已经是刚才的显卡。
Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)_第6张图片

2.2 GCC降级

因为Ubuntu18.04默认gcc7.0,而CUDA9.0只支持gcc6.0及以下版本,因此需要降级,这里选择降级到的版本是gcc5.5版本。
安装

sudo apt-get install gcc-5 g++-5

装完后进入到/usr/bin目录下,执行 ls -l gcc*
Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)_第7张图片
可以看到gcc连接到gcc7,我们要更改gcc链接。方法如下:

sudo mv gcc gcc.bak #备份
sudo ln -s gcc-5 gcc #重新链接

对g++做同样的修改:

ls -l g++*
sudo mv g++ g++.bak
sudo ln -s g++-5 g++

最后看gcc和g++版本号,如果是5.5代表修改成功:
Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)_第8张图片

2.3 安装依赖库

在终端输入:

sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev
sudo apt-get install libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev

成功安装完依赖库!

2.4 安装CUDA

我是选择的CUDA 9.0和CUDNN 7.05

只要记住CUDA的选择要根据CUDNN的型号来选,即CUDA的版本一定要和CUDNN的版本对应,必须是CUDNN支持的版本!

首先去官网下载CUDA安装包,注意根据你的系统选,最后一项选择runfile(local)。

CUDA最新版下载地址:https://developer.nvidia.com/cuda-downloads

以前版本的CUDA:https://developer.nvidia.com/cuda-toolkit-archive
找到我要下载的CUDA 9.0版本下载,时间有点长,下完安装就好了,几个小的更新包可以不安装。
Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)_第9张图片
进入刚刚下载的CUDA包的路径,执行命令:

sudo sh cuda_9.0.176_384.81_linux.run

一路按enter,结束协议后的设置如下,注意:第三个选项问是否安装NVIDIA Accelerated Graphics Driver驱动,选否
Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)_第10张图片
安装剩下的四个插件

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

添加环境变量

sudo gedit ~/.bashrc

在末尾添加:

export PATH=/usr/local/cuda-9.0/bin${
     PATH:+:${
     PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda9.0/lib64${
     LD_LIBRARY_PATH:+:${
     LD_LIBRARY_PATH}}
export CUDA_HOME=/usr/local/cuda-9.0

测试CUDA
我在装的时候出现了Warning提示,然后就测试了一下:

cd /usr/local/cuda-9.0/samples/1_Utilities/deviceQuery
sudo make
sudo ./deviceQuery

Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)_第11张图片
显示 PASS,安装成功。

2.5 安装CUDNN

首先是下载CUDNN,前面在下载CUDA的时候就已经说过,CUDA要对应CUDNN的版本,我选择的是CUDA9.0+CUDNN7.05的版本。

要先注册登录,填一个调查问卷方可下载

官网:https://developer.nvidia.com/cudnn

选择cudnn v7.05 for cuda9.0 linux
下载完毕后,切到默认的Downloads文件夹,可以看到 cudnn-9.1-linux-x64-v7.tgz 压缩包,先解压,然后将其中的内容复制到CUDA安装文件夹里面.

sudo cp cuda/include/cudnn.h    /usr/local/cuda/include      #注意,解压后的文件夹名称为cuda ,将对应文件复制到 /usr/local中的cuda内
sudo cp cuda/lib64/libcudnn*    /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h   /usr/local/cuda/lib64/libcudnn*

到此处,CUDNN安装就完成。

3 安装Pytorch

可以参考博客:https://blog.csdn.net/red_stone1/article/details/78727096
这里推荐使用离线安装,不易出错,一劳永逸。

安装包下载地址:https://pytorch.org/previous-versions/
这里我下载的是cu90/torch-0.3.0.post4-cp36-cp36m-linux_x86_64.whl版本的,0.3.0代表torch的版本,cp36代表支持的python版本,我的是python是3.6所以选择了cp36,linux_x86_64代表linux系统下的64位版本,cu90代表支持cuda9.0版本。

进入安装包的路径,执行:

pip install torch-0.3.0.post4-cp36-cp36m-linux_x86_64.whl 

接着执行:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple torchvision

然后验证pytorch和torchvision是否安装成功,在python命令行输入import torch,无警告代表成功。

lirui@lirui:~/下载$ python
Python 3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 18:10:19) 
[GCC 7.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> 

至此,Pytorch安装成功!
最后,我们测试一下安装完这些能不能使用GPU加速:
打开Python,输入以下命令:

import torch as t
x = t.rand(5,3)
y = t.rand(5,3)
if t.cuda.is_available():
    x = x.cuda()
    y = y.cuda()
    print(x+y)

最后输出下面的界面代表成功调用GPU加速,否则没有成功调用。

 0.6720  0.8196  0.3007
 1.1233  0.4768  0.9952
 0.5416  0.4801  1.5302
 0.3140  0.8989  0.1525
 1.3961  1.2157  0.5667
[torch.cuda.FloatTensor of size 5x3 (GPU 0)]

装起来太难了,整个过程搞了快一天,真心好累

判断pytorch是否支持GPU加速

import torch as t
print(t.cuda.is_available())

输出为:True,即安装成功

你可能感兴趣的:(深度学习,pytorch,深度学习)