解决PyTorch与CUDA版本不匹配的问题

作者:v-space 时间:2023-12-20 14:41:15 

1.CUDA驱动和CUDA Toolkit对应版本

表一:CUDA驱动及CUDA Toolkit最高对应版本

解决PyTorch与CUDA版本不匹配的问题

最新可查阅官方文档

注:驱动是向下兼容的,其决定了可安装的CUDA Toolkit的最高版本。

2.CUDA Toolkit版本及其可用PyTorch对应版本(参考官网)

表二:CUDA Toolkit版本及可用PyTorch对应关系

CUDAToolkit版本可用PyTorch版本
7.50.4.1 ,0.3.0, 0.2.0,0.1.12-0.1.6
8.01.1.0,1.0.0 ,0.4.1
9.01.1.0,1.0.1, 1.0.0,0.4.1
9.21.7.1,1.7.0,1.6.0,1.5.1,1.5.0,1.4.0,1.2.0,0.4.1
10.01.2.0,1.1.0,1.0.1 ,1.0.0
10.11.7.1,1.7.0,1.6.0,1.5.1,1.5.0, 1.4.0,1.3.0
10.21.7.1,1.7.0,1.6.0,1.5.1,1.5.0
11.01.7.1,1.7.0
11.11.8.0

注:虽有的卡驱动更新至较新版本,且CUDA Toolkit及PyTorch也可对应更新至新版本。但有的对应安装包无法使用,有可能是由于卡太旧的原因。

3.安装指导

在安装时会同时安装CUDA Toolkit以及PyTorch,这是我们要知道的。

步骤一:

使用nvidia-smi查询驱动版本:

解决PyTorch与CUDA版本不匹配的问题

如图中Driver Version所示,该卡目前的驱动版本为384.81。

步骤二:

此处提供三种方法可供选择。

(1)指定CUDA Toolkit版本

根据表一查询到可安装的CUDA Toolkit版本,384.81对应最高的CUDA Toolkit版本为9.0。

运行conda install pytorch cudatoolkit=9.0 -c pytorch即可。

此方法指定CUDA Toolkit版本后,conda会自动匹配到合适版本的PyTorch。

(2)指定PyTorch版本

根据表一查询到可安装的CUDA Toolkit版本,再根据表二查询到合适版本的PyTorch。384.81对应最高的CUDA Toolkit版本为9.0,9.0可安装PyTorch1.1.0版本。

运行conda install pytorch=1.1.0 -c pytorch即可。

此方法指定PyTorch版本后,conda会自动匹配到合适版本的CUDA Toolkit。

(3)同时指定CUDA Toolkit版本和PyTorch(推荐)

根据表一查询到可安装的CUDA Toolkit版本,根据表二查询到合适版本的PyTorch。

运行conda install pytorch=1.1.0 cudatoolkit=9.0 -c pytorch即可。

注:PyTorch1.8.0和1.0.0以前版本使用conda安装时命令有些许不同,具体可查看官网。

4.验证安装是否成功


#使用python运行
import torch
print(torch.__version__)
print(torch.cuda.is_available())

卸载当前版本PyTorch:


conda uninstall pytorch

补充:查看PyTorch的版本及CUDA和cuDNN版本

检查PyTorch版本


torch.version # PyTorch version
torch.version.cuda # Corresponding CUDA version
torch.backends.cudnn.version() # Corresponding cuDNN version
torch.cuda.get_device_name(0) # GPU type

更新PyTorch


conda update pytorch torchvision -c pytorch

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

来源:https://blog.csdn.net/weixin_42069606/article/details/105198845

标签:PyTorch,CUDA,不匹配
0
投稿

猜你喜欢

  • python pygame 愤怒的小鸟游戏示例代码

    2023-11-14 17:00:48
  • MySQL学习之基础命令实操总结

    2024-01-16 17:27:32
  • 详解Python之可迭代对象,迭代器和生成器

    2022-09-30 02:11:06
  • 用python爬取历史天气数据的方法示例

    2022-10-30 21:28:42
  • 解决pycharm回车之后不能换行或不能缩进的问题

    2023-06-11 10:45:40
  • HTML标签tbody的用法

    2009-11-02 10:11:00
  • OpenCV实现图像滤波之双边滤波

    2022-05-14 07:35:30
  • 手把手教你MySQL运算符

    2024-01-22 12:53:16
  • Python实现EXCEL表格的排序功能示例

    2021-05-17 20:50:11
  • 09七夕节各大搜索引擎LOGO欣赏

    2009-08-27 15:34:00
  • R语言绘制条形图及分布密度图代码总结

    2023-12-19 13:27:56
  • php中设置index.php文件为只读的方法

    2023-11-17 20:13:54
  • 基于Vue实现页面切换左右滑动效果

    2023-07-02 16:55:10
  • FrontPage2002简明教程五:css样式表的应用

    2008-09-17 11:31:00
  • python re正则表达式模块(Regular Expression)

    2021-01-26 20:22:26
  • python实现汉诺塔算法

    2022-11-11 04:57:51
  • Python实现求一个集合所有子集的示例

    2022-09-01 20:56:51
  • python中的mock接口开发示例详解

    2023-03-05 00:53:29
  • Python json模块与jsonpath模块区别详解

    2023-09-17 18:07:26
  • Git 教程之创建仓库详解

    2023-07-08 08:18:04
  • asp之家 网络编程 m.aspxhome.com