如何安装GPU版的PyTorch
在本节内容讲解之前,先提几个前提。
前提是,有部分同学电脑上存在如下几个问题:
- 电脑无法使用GPU
- GPU无法在Pytorch中调用
第一个问题
第一个问题的检验方法是在cmd中使用如下代码:
1 | nvidia-smi |
如果在jupyter中使用,在前方加上感叹号即可,注意是英文。
如果你的结果如下
证明你的电脑可以使用GPU,接下来我们再次验证该GPU是否可以在Pytorch中使用(在python中):
1 | torch.cuda.device_count() |
输出的结果就是你电脑的GPU数量(也可以观察第一步输出的内容)
如果你发现第一步根本没有输出,那么你需要下载一个nvidia显卡驱动,网址在这里,如果你的电脑使用AMD显卡,则找到AMD官网即可,点击官网右上角的驱动程序,选择相对应的打开即可。
那么我们如何确定我们电脑的显卡是英伟达还是AMD呢? 方法如下:
- 在windows搜索栏搜索设备管理器
- 找到显示适配器,点击展开
然后你就可以看到自己的显卡,在官网找到相应的驱动程序。
所谓驱动程序就是指硬件和系统的桥梁,也就是说相当于一个翻译官,比如你运行一个游戏或者一个模型训练,即使你的显卡效果优越,但如果没有一个合适的翻译,系统仍然不知道你在干什么。驱动的升级意味着能更好的发挥你显卡的功能。😄
注:显卡由GPU,显存等等组成,GPU是显卡的组成部分。
第二个问题
如果你的torch.cuda.device_count()输出结果为零,那么可能你没有下载支持GPU的Pytorch和对应的cuda。
下载cuda
CUDA 是 NVIDIA 发明的一种并行计算平台和编程模型。它通过利用图形处理器 (GPU) 的处理能力,可大幅提升计算性能。
目前为止基于 CUDA 的 GPU 销量已达数以百万计,软件开发商、科学家以及研究人员正在各个领域中运用 CUDA,其中包括图像与视频处理、计算生物学和化学、流体力学模拟、CT 图像再现、地震分析以及光线追踪等等。
他的下载网址在这里
下载Version是11的exe(local)即可。
此外,顺便一提,CUDA和Pytroch(GPU)以及显卡之间都有比较繁琐的对应关系,这部分也是比较折磨的,我的建议是都下载最新版本的。如果确实不行,再去仔细研究适当降低版本。
什么是cuDNN
CUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算。它就相当于工作的工具,比如它就是个扳手。
但是CUDA这个工作台买来的时候,并没有送扳手。想要在CUDA上运行深度神经网络,就要安装cuDNN,就像你想要拧个螺帽就要把扳手买回来。这样才能使GPU进行深度神经网络的工作,工作速度相较CPU快很多。
配置环境变量
- C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\cudnn\bin
- C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\extras\CUPTI\lib64
最好一路默认安装CUDA,这样会安装到C盘,运行速度会更快一些,如果你安装到其他盘,请将以上目录适当更改,然后,将以上目录添加到环境变量中即可。
环境变量更改上一节课已经讲过,如果不会可以私聊我。
下载GPU版本的Pytroch和Pytorchvision
具体的镜像网站在这里
之后根据以下三个信息定位你要下载的内容:
- cuda的版本
- python的版本
- 你的系统
比如cu101/torchvision-0.5.0-cp38-cp38-win_amd64.whl。
如果你的cuda和python都是最新,只需要下载最新的即可。
最后一步使用cmd的命令,设你的下载目录为x,则在cmd中使用如下命令:
1 | pip install torch 'x' |
注意,需要下载两个whl文件。
以上下载和pip install都是在某一个环境中使用的,如果你想要在jupyter中使用,请参考我之前的文章进行环境注入