【问题标题】:Difference between versions 9.2,10.1,10.2,11.0 of cuda for PyTorch 1.7PyTorch 1.7 的 cuda 版本 9.2、10.1、10.2、11.0 之间的区别
【发布时间】:2021-05-05 09:24:26
【问题描述】:

最近,我需要安装pytorch,当我查看网站时:

install pytorch website

它显示了四个不同的版本 9.2,10.1,10.2,11.0 可供选择,并且我的计算机上安装了 cuda 版本 10.0 和驱动程序版本 450,我以为使用 pytorch 时会无法启用 gpu ,在我选择 10.1 并尝试torch.cuda.is_available() 后它返回True

我有两个问题:

  1. 为什么即使我的 cuda 版本与我提到的任何版本都不一样,但一切都可以正常工作?

  2. 选择cuda版本9.2、10.1、10.2、11.0有什么区别?

【问题讨论】:

  • 你到底安装了哪一个?
  • @Ivan 不好意思没提,我选择10.1安装pytorch1.7
  • 好的,您是如何检查您的 CUDA 版本的?
  • @Ivan 是的,输入“nvcc -V”后,它给出:Cuda 编译工具,10.0 版,V10.0.130

标签: pytorch


【解决方案1】:

从包管理器(conda 或 pip)安装时,PyTorch 不使用系统的 CUDA 安装。相反,它带有 CUDA 运行时的副本,只要您的系统与该版本的 PyTorch 兼容,它就可以工作。兼容是指 GPU 支持特定版本的 CUDA并且GPU 的计算能力是 PyTorch 二进制文件(针对所选版本)在编译时支持的能力。

因此nvcc报告的版本(系统上安装的版本)基本上是无关紧要的。您应该查看的版本是

import torch
# print the version of CUDA being used by pytorch
print(torch.version.cuda)

唯一重要的是系统的 CUDA 版本是否从源代码编译 PyTorch。

至于选择哪个版本的CUDA。您可能需要您的系统兼容的最新版本的 CUDA。这是因为与旧版本相比,新版本通常包含性能改进。

【讨论】:

  • print(torch.cuda.version) 返回:AttributeError: module 'torch.cuda' has no attribute 'version'
  • @Pro_gram_mer 哎呀,这是一个错字。应该是torch.version.cuda。我会更新答案。
  • @jodag 你知道 CUDA 10.2 和 CUDA 11.1 作为计算平台的主要区别是什么吗?我一直在寻找文档,但无济于事。
  • @OmarAlSuwaidi 就 pytorch 而言,CUDA 的版本不应影响您可以从库中获得哪些功能。 AFAIK 所有的 pytorch 操作都应该在所有版本的 CUDA 上给出相同的结果。 pytorch 有 10.2 和 11.1 版本,因为有些 GPU 不支持 CUDA 10.2,有些不支持 11.1,具体取决于计算能力 (cuda wikipedia page)。请注意,CUDA 本身在版本之间具有不同的功能。这意味着 11.1 版本中的某些 pytorch 操作可能比 10.2 版本更快。
猜你喜欢
  • 2022-07-27
  • 1970-01-01
  • 1970-01-01
  • 2010-11-16
  • 1970-01-01
  • 2020-09-20
  • 2021-10-27
  • 1970-01-01
  • 2017-10-22
相关资源
最近更新 更多