【问题标题】:How to get CUDA compute capability of a GPU in Pytorch?如何在 Pytorch 中获取 GPU 的 CUDA 计算能力?
【发布时间】:2023-02-24 14:16:32
【问题描述】:

问题很简单:我的一个用户在pytorch中遇到了一个错误:

Found GPU0 NVIDIA GeForce GT 710 which is of cuda capability 3.5.
PyTorch no longer supports this GPU because it is too old.
The minimum cuda capability supported by this library is 3.7.

这意味着我不能依赖torch.cuda.is_available() 来检查它是否真的可以运行我的代码。我还需要确保 GPU 的 CUDA 计算能力 >= 3.7。然而,由于某些奇怪的原因,在堆栈溢出或谷歌上找不到获得 GPU 的 CUDA 计算能力这一看似简单的任务,尽管在错误消息中似乎没有问题。

【问题讨论】:

  • 我发现 Cuda Wikipedia page 是确定计算能力的最佳资源。
  • 我的问题是关于如何以编程方式确定它,以便在我的用户运行它时它不会崩溃。谷歌研究返回了大量不相关的结果,我花了很长时间才找到答案。一时兴起,我尝试了 chatGPT,它立即正确回答。这些天谷歌搜索似乎不太好。此外,根据您的维基百科页面,cuda 11 支持功能 3.5,但我的错误消息显示支持的最低功能是 3.7。我也有点困惑为什么完全放弃对功能较弱的 GPU 的支持,因为 (IIUC) cuda 能力只是指它们运行它的速度
  • @pete:你看到的计算能力的限制是由构建和维护 Pytorch 的人强加的,而不是底层 CUDA 工具包。他们选择了这样。此外,计算能力不是性能指标,它(顾名思义)是硬件功能集/功能指标。

标签: pytorch cuda


【解决方案1】:

我没有意识到的是torch.cuda.get_device_properties(0)的“主要”和“次要”实际上是CUDA计算能力。例如,如果 major 为 7,minor 为 5,则 cuda capability 为 7.5。也可以通过get_device_capability完成。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-10
    相关资源
    最近更新 更多