1 基本概念
1.1 什么是CUDA?
CUDA(ComputeUnified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。
1.2 什么是CUDNN?
NVIDIA cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。NVIDIA cuDNN可以集成到更高级别的机器学习框架中,如谷歌的Tensorflow、加州大学伯克利分校的流行caffe软件。简单的插入式设计可以让开发人员专注于设计和实现神经网络模型,而不是简单调整性能,同时还可以在GPU上实现高性能现代并行计算。
1.3 CUDA与CUDNN的关系
CUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算。它就相当于工作的工具,比如它就是个扳手。但是CUDA这个工作台买来的时候,并没有送扳手。想要在CUDA上运行深度神经网络,就要安装cuDNN,就像你想要拧个螺帽就要把扳手买回来。这样才能使GPU进行深度神经网络的工作,工作速度相较CPU快很多。
2 错误
- 错误分析:
- 安装pytorch或torchvision时,无法找到对应版本
- cuda可以找到,但是无法转为.cuda()
- 以上两种或类似错误,一般由两个原因可供分析:
- cuda版本不合适,重新安装cuda和cudnn
- pytorch和torchvision版本没对应上
3 pytorch和torchvision版本对应关系
以下版本截止2021年3月24日
pytorch | torchvision | python | cuda |
---|---|---|---|
1.8.0 | 0.9.0 | >=3.6 | 10.2,11.1 |
1.7.1 | 0.8.2 | >=3.6 | 9.2, 10.1,10.2,11.0 |
1.7.0 | 0.8.0 | >=3.6 | 9.2, 10.1,10.2,11.0 |
1.6.0 | 0.7.0 | >=3.6 | 9.2, 10.1,10.2 |
1.5.1 | 0.6.1 | >=3.6 | 9.2, 10.1,10.2 |
1.5.0 | 0.6.0 | >=3.6 | 9.2, 10.1,10.2 |
1.4.0 | 0.5.0 | ==2.7, >=3.5, <=3.8 | 9.2, 10.0 |
1.3.1 | 0.4.2 | ==2.7, >=3.5, <=3.7 | 9.2, 10.0 |
1.3.0 | 0.4.1 | ==2.7, >=3.5, <=3.7 | 9.2, 10.0 |
1.2.0 | 0.4.0 | ==2.7, >=3.5, <=3.7 | 9.2, 10.0 |
1.1.0 | 0.3.0 | ==2.7, >=3.5, <=3.7 | 9.0, 10.0 |
<1.0.1 | 0.2.2 | ==2.7, >=3.5, <=3.7 | 9.0, 10.0 |
4 conda安装方法
根据pytorch官网方法安装,参考
/get-started
上面命令为安装最新的版本,为了能够应对各种不同硬件条件,常需要手动输入命令安装特定版本,可参考如下代码
# 安装pytorch==.0 torchvision==.0 cudatoolkit=
conda install pytorch==1.x.0 torchvision==0.x.0 cudatoolkit=10.x -c pytorch
比如,举个更具体地例子:
# CUDA 9.2
conda install pytorch==1.2.0 torchvision==0.4.0 cudatoolkit=9.2 -c pytorch
# CUDA 10.0
conda install pytorch==1.2.0 torchvision==0.4.0 cudatoolkit=10.0 -c pytorch
# CPU Only
conda install pytorch==1.2.0 torchvision==0.4.0 cpuonly -c pytorch
查看pytorch版本:
import torch
print(torch.__version__) # 查看torch当前版本号
print(torch.version.cuda) # 编译当前版本的torch使用的cuda版本号
print(torch.cuda.is_available()) # 查看当前cuda是否可用于当前版本的Torch,如果输出True,则表示可用
5 查看cuda版本
nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Thu_Jan_28_19:32:09_PST_2021
Cuda compilation tools, release 11.2, V11.2.142
Build cuda_11.2.r11.2/compiler.29558016_0
后话
其实,环境中各版本对应关系出错,很容易导致各种乱七八糟地错误,所以尽量按照官方的要求安装。
/jorg_zhao/article/details/106883420