Windows10 安装 CUDA + cuDNN + pyTorch

2020/5/29

在 windows10 上面安装 CUDA 和 cuDNN

0、简单了解一下 CUDA 和 cuDNN 

  1)什么是 CUDA

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

  2)什么是cuDNN

        NVIDIA cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。NVIDIA cuDNN可以集成到更高级别的机器学习框架中,如谷歌的Tensorflow、加州大学伯克利分校的流行caffe软件。简单的插入式设计可以让开发人员专注于设计和实现神经网络模型,而不是简单调整性能,同时还可以在GPU上实现高性能现代并行计算。

  3)CUDA 和 cuDNN 的关系  
 
  CUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算。它就相当于工作的工具,比如它就是个扳手。但是CUDA这个工作台买来的时候,并没有送扳手。想要在CUDA上运行深度神经网络,就要安装cuDNN,就像你想要拧个螺帽就要把扳手买回来。这样才能使GPU进行深度神经网络的工作,工作速度相较CPU快很多。

1、查看本机的CUDA 驱动适配版本

  桌面右键打开英伟达控制面板,点击帮助->系统信息->组件

  

   可以看到本机支持的是CUDA 10.1  版本,表示是不支持更高版本的。如果你升级驱动,可能会支持更高版本,也可能不会提升。所以就必须安装 10.1 及以下的版本。

2、CUDA 各个历史版本下载链接

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

  

   那根据第一步里面我自己的机器支持,我就下载10.1(Feb 2019)这个版本。

 

  可以看到版本号是10.1.105,低于第一步里面的10.1.120,应该是没问题的。我的下载速度还是很快的:

  

 3、下载 cuDNN

  地址:https://developer.nvidia.com/rdp/cudnn-download  

  下载cuDNN是需要登录英伟达开发者账户的,注册一个并填写问卷就行了,很简单。

  注意:必须选择和你安装的CUDA匹配的版本。

  这个账号密码要求有大写字母,有字符:G**_*

  

   

   上面选择 10.1版本,然后选择 windows10 ,接着开始下载。

   两百多兆的压缩包,不过这次下载速度很慢。

 4、安装 CUDA 和 cuDNN  

  1)安装 CUDA

  找到你下载的CUDA,无脑安装就行了。当然如果你想自定义的话要记住你选择的安装路径。

  CUDA安装完成后,打开命令行输入 nvcc -V ,成功的话会返回 cuda 版本号:

  

   2)cuDNN

  解压cuDNN压缩包,可以看到bin、include、lib目录:

   

   将 bin 目录里面的内容复制,然后粘贴到  C:Program FilesNVIDIA GPU Computing ToolkitCUDA   对应的  bin 目录里面:

  

   同样的,include 和 lib 目录里面的文件也复制到相应的文件夹里面。

 5、添加环境变量

  在系统环境变量的Path项下添加几个路径

  

   点击 编辑 -- > 新建,需要添加下面两个路径(安装目录):

   C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.1

   C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.1libx64

6、查看安装结果

  

  

7、安装 pyTorch(在这一部分踩了很多坑)

  (可以先看一下这篇文章 参考  https://blog.csdn.net/qq_36659185/article/details/106325832)

  先放结论:(执行以下命令)

 (1)创建pyTorch 虚拟环境(我们想在哪个虚拟环境上面安装pyTorch就可以在哪个环境安装,各环境之间互补影响

  conda create  -n  pytorch  python=3.7

   (2)进入 pytorch 虚拟环境

  activate pytorch

 (3)执行以下安装命令:

  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 install pytorch torchvision cudatoolkit=10.1

(4)安装完成测试 PyTorch GPU 版本是否安装成功 

运行以下命令:

python

import torch

x = torch.rand(5,5)

print(x)

  输出类似下面内容,则pytorch安装成功

   

再执行torch..cuda.is_available()

如果返回True,GPU版Pytorch成功安装完毕

  

下面是一些坑,可以不用看

  下面再说详细步骤,以及自己踩过的坑:

  进入官网  https://pytorch.org/get-started/locally/

  

  在 Anaconda Prompt 里面运行下面自动生成的命令。

  

  正常情况下到这里就可以慢慢下载成功安装了。

  但是问题就出在 “ 慢慢” 二字!

  因为官方源下载实在是太慢了!所以这里不得不考虑国内镜像源,我这里选择清华源(2020/5/29实测清华源可用,而且速度较快)。

  注:这里补充一下添加清华源的方法,命令如下,依次执行:

       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 install pytorch torchvision cudatoolkit=10.1  -c pytorch   ( 去掉后面的 -c pytorch 就是只使用清华源,不去掉就是官方源也可能会用到)

   (注: 删除源的命令是  conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/    ) 

  

  下载中:

  

    如果使用官方的源,会很慢很慢,如果使用清华源,会显示有些需要安装的包没有,比如 pytorch-1.5.0:(注:这里其实是一个坑,并不是没有,后面有讲到)

  

    使用 conda install pytorch torchvision cudatoolkit=10.1 -c pytorch 命令,就会有些用官方源,有些用清华源。

  

   上图中,因为我反复安装了好几次,所以显示有些包已经安装好了,有些包已经下载好了但还未安装,有些包还需要下载。

  我的问题出现在 pytorch这个包,官方源下载速度太慢,清华源不知为啥没有。

  我查了一下原因,是不是我应该再设置一个 pyTorch 镜像:

  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/

  我从网上找到的,不知道能不能解决问题,我先试一下:

  

  我再来安装试一下:

  

   卧槽可以了!太开心了:

  

   开始下载,速度确实还可以:

   

  

原文地址:https://www.cnblogs.com/guan-zl/p/12986253.html