背景·碎碎念

小白一枚,研0在读,为了深度学习装pytorch,先懵懂无知地旁观师姐在Linux上装了一遍环境,大概有了一丢丢印象,然后试着在自己的win10电脑上装。anaconda+pycharm已装后为了这个pytorch简直心累。

第一遍装pytorch以为自己的电脑配置只能装cuda9.0版本,从而装了个低版本的torch,结果跑大佬的代码,有的参数不能用,因为低版本torch库里根本没有!第二遍再装,问题依旧挺多,但好歹装下来了!

记录下我的经验,希望给和我一样的纯小白朋友一点启发。

cuda下载

1、cuda是啥?为啥要装?

(来自百度百科:)

CUDA(Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。

随着显卡的发展,GPU越来越强大,而且GPU为显示图像做了优化。在计算上已经超越了通用的CPU。如此强大的芯片如果只是作为显卡就太浪费了,因此NVIDIA推出CUDA,让显卡可以用于图像计算以外的目的。

(换句简单的话说:)

只用CPU跑代码太慢了,装cuda以后可以用GPU辅助CPU,跑深度学习的代码一下子变快了呢~~

2、cuda跟自己电脑的配置有啥关系?

不是所有电脑都可以装cuda!

打开电脑的设备管理器,在显示适配器一栏检查自己拥有啥显卡。除了每台电脑都有的集成显卡,还必须有至少一个独立显卡,才有可能装cuda哦。

安装pytorch cpu版本大概多久 pytorch要装多久_CUDA

 如图所示,我除了集成显卡以外还有一个独立显卡,型号是NVDIA GeForce GTX 1050 Ti。

知道自己的显卡型号以后,有2个问题:

(1)这个型号的显卡可以装cuda吗?

基本上NVIDIA的显卡都支持CUDA,包括Quadro绘图卡,Tesla加速计算卡,GeForce游戏卡,NVS以及Jetson等等。可以通过官网查询自己的型号是否支持cuda(不过这一步并不是十分必要):

CUDA GPUs | NVIDIA Developer

(2)这个型号的显卡可以装cuda的什么版本呢?

最高可以装到cuda的什么版本,由驱动的版本决定。

在电脑桌面空白处右击,打开NVIDIA控制面板,点进帮助->系统信息,选择组件,查看NVCUDA64.DLL后的产品名称,可以看到驱动所支持的最高的cuda版本,安装这个版本或者更低的版本都可以。

安装pytorch cpu版本大概多久 pytorch要装多久_CUDA_02

 如果发现自己的驱动能支持的版本很低,不用担心,我们可以先去NVIDIA官网更新一波自己的驱动,再回头下载cuda。

Download Drivers | NVIDIA

安装pytorch cpu版本大概多久 pytorch要装多久_CUDA_03

 找到自己的显卡型号,正常下载安装即可(后续选择精简安装就好了)。然后再按之前的方法检查以下驱动支持的cuda最高版本,是不是变高了呢?

3、装cuda

https://developer.nvidia.com/cuda-toolkit-archive

进入官网,选择一个版本(只要低于电脑驱动最高支持的版本就行,可以根据你想跑的大佬代码的环境要求来安装)。我选择的是10.2版本(base installer):

安装pytorch cpu版本大概多久 pytorch要装多久_python_04

 下载好以后,进入你的安装位置,双击运行,按照界面的提示来。如果不想装再C盘,着重注意一下安装位置。很多安装教程里说装VS会出现问题,所以需要选择自定义安装,手动取消勾选VS那一项,我不太清楚会发生什么,我跟着做了。

4、cudnn下载

cuDNN Archive | NVIDIA Developer

到官网找到对应cuda版本的cudnn进行下载,解压后将文件夹中的bin、include、lib这3个文件夹复制粘贴到CUDA的安装目录下(默认路径是C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2),直接覆盖即可。

5、检查cuda安装成功了吗?

搜索cmd进入命令窗,利用以下命令进入cuda安装路径中的某个文件夹 

cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\extras\demo_suite

按回车,接着输入:

bandwidthTest.exe

显示PASS则没问题,再来一个检查,输入:

deviceQuery.exe

显示PASS则说明cuda和cudnn均安装成功。

6、设置环境变量

建议找一下别人的教程,孩子这部分没截图。

pytorch安装

Start Locally | PyTorch

上pytorch官网找对应cuda版本的下载命令:

安装pytorch cpu版本大概多久 pytorch要装多久_pytorch_05

比如我有10.2版本的cuda,就按图上这样选择,得到了一条命令。

1、设置清华镜像源

安装服务器在国外的python库比较慢,改设置咱们国内的镜像源可以快一点儿,清华镜像源就是其中之一。

在anaconda prompt的命令窗中输入以下代码:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
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/peterjc123/

2、创建虚拟环境

python代码要跑起来,得先配置环境,pytorch也是环境里的内容之一。没有容器,也装不了东西,所以咱们先创建一下环境:

接着在anaconda prompt的命令窗中敲命令(其实cmd也可以):

conda create -n pytorch python=3.8

命令中的pytorch是我给这个环境取的名字,你也可以随便取,python版本也不一定要=3.8,看你需求。

然后就是噼里啪啦的安装,遇到y/n输入y就完事了。

创完环境要激活一下,才能进入这个环境:

conda activate pytorch

进入环境以后能看到命令行前有一个(pytorch),说明已经进入名为pytorch的环境啦。

安装pytorch cpu版本大概多久 pytorch要装多久_安装pytorch cpu版本大概多久_06

 

然后呢咱们就是把之前在官网得到的那条命令复制过来,记得去掉尾巴上的-c python,因为咱用的是清华镜像源哈!

conda install pytorch torchvision torchaudio cudatoolkit=10.2

然后y/n还是选y,等它安装就好了。

但我比较倒霉,它不断安装失败,不断报错CondaHTTPError: HTTP 403 FORBIDDEN for url。我是在学校用的不太稳定的校园网,把网关了,忍痛开启手机热点,一切迎刃而解......默默心疼花出去的那1.6G流量。

当successfully装上以后,往命令行输个python,回车,看到>>>以后,用代码调试一下看看咱以cuda为基础的pytorch好使不好使:

import torch
torch.cuda.is_available()

安装pytorch cpu版本大概多久 pytorch要装多久_安装pytorch cpu版本大概多久_07

 像我这样得到True就说明好使,成了!