一、前言
Pytorch分为CPU版和GPU版,工作中一般会选择GPU进行训练。这里我们主要介绍如何安装Pytorch的GPU版。因为版本要求比较严格,我这里搭配了一套可用的版本,可当做参考。win10 + 1070ti + Anaconda + python3.6 + CUDA10.1 + cuDNN8.0.2 + pytorch1.5.0
二、win10
操作系统我这里选择win10 64位专业版,其他系统没试过,可自行尝试。
三、1070ti
想要用GPU跑训练,首先要有一张显卡,这里附一张显卡性价比推荐图。
780ti、980ti虽然性价比最高,但市面上并不常见。1080ti价格太贵,本人能力有限,土豪请忽略。1070和1080大几率会买到矿卡,所以也不推荐。再结合性价比,我这里选择的是微星钛金龙1070ti,1070ti价格一般在1500-2000。可以作为参考。
这里使用的驱动为432版本,该版本对应的cuda有10.1版本以下,可以兼容低版本,比如可以选择9.2。我这选择的cuda 10.1版本。
查看驱动版本可以使用cmd,输入命令:
nvidia-smi
四、Anaconda
首先先下载安装包。建议使用迅雷下载,速度会快一些
官网windows64位下载地址:https://repo.anaconda.com/archive/Anaconda3-2020.07-Windows-x86_64.exe
安装包下载好后,双击安装文件,点击Next
点击I Agree
这里选择All Users,点击Next
选择安装路径,点击Next
两个选项都选中,点击Install,稍等片刻~
安装完成后测试一下是否安装成功。
打开cmd,输入conda list回车,如下图即成功
五、python3.6
这里我们使用conda进行python3.6安装。
conda相当于一套虚拟环境。比如我们本机安装了python3.8版本,但这时我们需要使用python3.6版本,难道要把python3.8版本卸载重装吗,这样太麻烦了。这时就需要conda了,我们可以新建一个conda环境,在这个环境中安装python3.6。我们使用命令行创建conda环境:
#conda create -n gpu python=3.6
conda create -n 虚拟机名称 python=想要安装的python版本
中间会弹出Proceed([y]/n)?,输入:y
接下来我们需要切换到虚拟机,用下述命令进行切换:
#activate gpu
activate 虚拟机名称
六、CUDA10.1
接下来我们开始安装cuda,这里要注意一点,pytorch目前支持最高cuda版本为10.2,千万不要用11.0的版本。前面说过,版本卡的死死的,稍微有版本不兼容,都会导致最后无法识别gpu。这里我们选择的是CUDA10.1。
cuda可以从NVIDIA官网进行下载 https://developer.nvidia.com/cuda-downloads
这里直接附上10.1版本的下载链接,由于安装包比较大,大约2.5G,官网速度太慢,所以建议用迅雷进行下载。
https://developer.download.nvidia.cn/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_426.00_win10.exe
下载好后我们开始进行安装:
1.等待安装程序初始化后,一路下一步即可。(默认安装)
2.按照如下步骤配置环境变量
3.添加如下环境变量:
CUDA_PATH=C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.1
CUDA_BIN_PATH=%CUDA_PATH%\bin
CUDA_LIB_PATH=%CUDA_PATH%\lib\x64
CUDA_SDK_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1
CUDA_SDK_LIB_PATH=%CUDA_SDK_PATH%\common\lib\x64
CUDA_SDK_BIN_PATH=%CUDA_SDK_PATH%\bin\win64
4.在原有的PATH变量中添加:
%CUDA_PATH%;
%CUDA_BIN_PATH%;
%CUDA_LIB_PATH%;
%CUDA_SDK_PATH%;
%CUDA_SDK_LIB_PATH%;
%CUDA_SDK_BIN_PATH%;
5.测试安装是否成功,打开cmd,输入如下指令
nvcc -V
七、cuDNN8.0.2
接下来我们安装cuDNN,首先先附上官网下载地址
这里我们选择与cuda匹配的cuDNN,也是推荐用迅雷下载,不然太慢。
这里直接附上下载地址:
https://developer.nvidia.com/compute/machine-learning/cudnn/secure/8.0.2.39/10.1_20200724/cudnn-10.1-windows10-x64-v8.0.2.39.zip
下载后是zip的压缩包
1.解压:会生成cuda/include、cuda/lib、cuda/bin三个目录;
2.分别将cuda/include、cuda/lib、cuda/bin三个目录中的内容分别拷贝到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1对应的include、lib、bin目录下即可。
注意:不是替换文件夹,而是将文件放入对应的文件夹中(如果提示是否替换,说明操作有问题)
八、pytorch1.5.0
我们可以访问pytorch官网,定制化生成下载链接
这里需要注意一点,官网下载会非常非常慢,以至于根本下载不下来,这里我们选择清华源进行下载。配置清华源非常简单。依次在cmd的conda源中运行如下指令:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
之前从官网生成的链接为conda install pytorch torchvision cudatoolkit=10.1 -c pytorch。这里注意要把后面的-c pytorch去掉,不然还是使用的默认源下载。这里准备好了下载链接,直接运行即可:
conda install pytorch==1.5.0 torchvision==0.6.0 cudatoolkit=10.1
接下来验证是否安装成功,我们进入到python开发环境中,输入如下指令:
>>> import torch
>>> print(torch.version)
>>> torch.cuda.is_available() #如果为True,说明安装成功。
总结
到这里Pytorch框架的GPU版本已经安装完成。
框架安装好后,咱们还需要另一个帮手,那就是一款合适的IDE,下一节将会介绍PyCharm的使用方法。