CUDA,PyTorch,GCC 之间的版本关系

最近在配置深度学习环境,CUDA,PyTorch,GCC 之间的版本关系是特别需要注意的事情,否则代码根本运行不起来,或者运行报错。

PyTorch

首先 PyTorch 的不同版本是不完全兼容的,所以在配置环境时要看清楚要求的版本,然后 PyTorch 对 CUDA 的版本有要求,可以通过接口查看支持的 CUDA 最高版本:

bash 复制代码
import torch
print(torch.__version__)
print(torch.cuda_is_available())

或者直接使用以下命令去查看安装的有哪些库:

bash 复制代码
pip list

CUDA与nvidia driver版本之间的对应关系

Linux x86_64 Driver Version Windows x86_64 Driver Version
CUDA 12.2.x >=525.60.13 >=525.41
CUDA 12.1.x >=525.60.13 >=527.41
CUDA 12.0.x >=525.60.13 >=527.41
CUDA 11.8.x >=450.80.02 >=452.39
CUDA 11.7.x >=450.80.02 >=452.39
CUDA 11.6.x >=450.80.02 >=452.39
CUDA 11.5.x >=450.80.02 >=452.39
CUDA 11.4.x >=450.80.02 >=452.39
CUDA 11.3.x >=450.80.02 >=452.39
CUDA 11.2.x >=450.80.02 >=452.39
CUDA 11.1 (11.1.0) >=450.80.02 >=452.39
CUDA 11.0 (11.0.3) >=450.36.06** >=451.22**

使用以下命令查看自己的CUDA版本:

bash 复制代码
nvcc --version

使用以下命令查看自己的nvidia driver版本:

bash 复制代码
nvidia-smi

如何想更换显卡的CUDA版本,但是没有管理员权限,可参考以下链接的文章:
https://blog.csdn.net/qq_45729306/article/details/143873069

CUDA与GCC之间的对应关系

在踩了无数次坑之后,终于发现CUDA能否正常使用,还与GCC之间有密切的关系,否则代码还是会运行不起来,反正我的是这样(计算机视觉领域)。但是有意思的是我的另一台服务器安装的GCC版本为7.5.0,CUDA版本为11.7,虽然不符合下面表格中的对应关系,但是代码依然可以运行起来,头大了。所以这部分可以算作最后的检查工作吧。

以下是CUDA与GCC之间的兼容关系。

CUDA version GCC version
11.4.1+,11.5,11.6,11.7 11
11.1,11.2,11.3,11.4.0 10
11 9
10.1,10.2 8
9.2,10.0 7
8 6
7 5.3
5.5,6 4.9
4.2,5 4.8
4.2,5 4.6
4.1 4.5
4.0 4.4

使用以下命令查看自己的GCC版本:

bash 复制代码
gcc --version

如何想更换GCC版本,但是没有管理员权限,可参考以下链接的文章:
https://blog.csdn.net/qq_45729306/article/details/143903591

Pytorch与CUDA版本之间的对应关系

这部分是重中之重,每一个配置过深度学习环境的同学肯定都遇到过这个问题吧,无一例外。版本如果不对应,代码根本跑不起来,不想上面的GCC与CUDA版本那样还存在例外的情况。

CUDA version Pytorch version
11.7 1.13.1,1.13.0
11.6 1.13.1,1.13.0,1.12.1,1.12.0
11.3 1.12.1,1.12.0,1.11.0,1.10.1,1.10.0,1.9.1,1.9.0,1.8.1,1.8.0
11.1 1.8.0
11.0 1.7.1,1.7.0
10.2 1.12.1,1.12.0,1.11.0,1.10.1,1.10.0,1.9.1,1.9.0,1.8.1,1.8.0,1.7.1,1.7.0,1.6.0,1.5.1,1.5.0
10.1 1.7.1,1.7.0,1.6.0,1.5.1,1.5.0,1.4.0,1.3.0
10.0 1.2.0,1.1.0,1.0.1,1.0.0
9.2 1.7.1,1.7.0,1.6.0,1.5.1,1.5.0,1.4.0,1.2.0,0.4.1
9.0 1.1.0,1.0.1,1.0.0,0.4.1
8.0 1.1.0,1.0.0,0.4.1
7.5 0.4.1,0.3.0,0.2.0,0.1.6,0.1.7,0.1.8,0.1.9,0.1.10,0.1.11,0.1.12

以下是官网给出的更换CUDA版本的所有命令的链接地址:
https://pytorch.org/get-started/previous-versions/

这个地址可能访问的时候会加载不出来,或者非常慢,后续我还会更新这部分的内容。

相关推荐
代码中介商11 小时前
C++ STL 容器完全指南(二):vector 深入与 stringstream 实战
开发语言·c++
AI周红伟11 小时前
All in Token, 移动,电信,联通,阿里,百度,华为,字节,Token石油战争,Token经济,百度要“重写”AI价值度量
大数据·人工智能·机器学习·百度·copilot·openclaw
AI周红伟11 小时前
Token经济学:AI时代的新货币战争,All in Token, 新时代的石油战争,华为,阿里,百度,字节的石油战争
大数据·人工智能·机器学习·百度·华为·copilot·openclaw
XM_jhxx14 小时前
±0.03mm的精度怎么保证?翌东塑胶用AI赋能质量管控升级
人工智能
阿正的梦工坊15 小时前
深入理解 PyTorch 中的 unsqueeze 操作
人工智能·pytorch·python
FreakStudio16 小时前
硬件版【Cursor】?aily blockly IDE尝鲜封神,实战硬伤尽显
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
澈20716 小时前
C++并查集:高效解决连通性问题
java·c++·算法
秦歌66617 小时前
DeepAgents框架详解和文件后端
人工智能·langchain
郝学胜-神的一滴17 小时前
Qt 入门 01-01:从零基础到商业级客户端实战
开发语言·c++·qt·程序人生·软件构建
测试员周周17 小时前
【Appium 系列】第06节-页面对象实现 — LoginPage 实战
开发语言·前端·人工智能·python·功能测试·appium·测试用例