CUDA架构支持指南

清夏晚风 Lv7

CUDA架构支持指南

本文整理自 NVIDIA 技术博客《Navigating GPU Architecture Support: A Guide for NVIDIA CUDA Developers》(发布于 2025-08-04,更新于 2025-08-06),版权归 NVIDIA 所有,仅作个人学习归档。如果您最近使用 NVIDIA CUDA 编译器(NVCC)开发 GPU 应用,可能会遇到下面的警告消息:

1
nvcc warning : Support for offline compilation for architectures prior to '<compute/sm/lto>_75' will be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning).

这究竟意味着什么,又应该采取哪些行动?下面解释 NVIDIA CUDA 工具包和 NVIDIA 驱动如何协同工作以支持 GPU。

NVIDIA 软件堆栈

用于编程 GPU 的软件堆栈分为两个独立但同样重要的部分:用于构建应用程序的 CUDA 工具包,和用于运行应用程序的 NVIDIA 驱动。

NVIDIA 驱动程序

驱动程序是直接与 GPU 硬件接口的软件,也是应用软件和硬件之间的接口,可以视为直接位于 GPU 硬件之上的软件。原则上,它与系统中鼠标、键盘、网卡等其他设备的驱动程序相同。

NVIDIA 驱动程序通常独立于 CUDA 工具套件安装,但 NVIDIA 也提供捆绑安装程序和软件包。从驱动下载页面安装时,可以查看每个驱动支持哪些 GPU。

NVIDIA 驱动程序分为三个不同的分支,每个分支都有不同的生命周期:

  • 新功能分支(NFB)驱动:发布频率最高,包含面向开发者的最新 CUDA 功能,适合希望尝试最新硬件和软件功能的开发者。发布后不再更新。
  • 生产分支驱动:每年发布两次,专为企业和数据中心生产使用而设计和认证,定期修复安全问题和改进性能,提供 1 年的支持。
  • 长期支持分支(LTS)驱动:大约每 18 个月发布一次,同样经过企业和数据中心生产认证,提供 3 年的支持。对于需要更长时间支持的用户来说是理想选择。

CUDA 工具套件

CUDA 工具套件是开发者用于编程 GPU 的软件开发套件(SDK),包含编译器、库、开发者工具和二进制实用程序。它可以单独下载安装,也可以与驱动程序打包安装,可以将其视为 NVIDIA 驱动程序的扩展。

GPU 支持

回到开头的警告消息:在下一个主要版本 CUDA 13.0 中,将删除对计算能力(CC)7.5 之前架构的离线编译支持。这是 NVIDIA 正常支持流程的一部分——随着新架构发布,较旧架构的支持会被弃用并最终删除。

查看特定版本 CUDA Toolkit 支持哪些架构,最简单的方法是让 NVCC 打印出受支持架构列表。在 CUDA 12.9 上执行 nvcc --list-gpu-arch,将看到:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$ nvcc --list-gpu-arch
compute_50
compute_52
compute_53
compute_60
compute_61
compute_62
compute_70
compute_72
compute_75
compute_80
compute_86
compute_87
compute_89
compute_90
compute_100
compute_101
compute_103
compute_120
compute_121

架构列表中的数字表示计算能力,可以通过 NVIDIA 当前和旧版 GPU 页面查看 GPU 与 CC 的对应关系。

警告消息意味着 CC 7.5 之前的架构将不再受支持,即 5.x、6.x、7.0 和 7.2 架构,也就是 NVIDIA Maxwell、Pascal 和 Volta 架构。

警告中的另一个重点是取消对”离线编译“的支持:离线编译是指编写 GPU 代码(例如 CUDA C++),然后使用 NVCC 编译该代码以构建二进制文件。从 CUDA 13.0 开始,将无法使用 NVCC 构建针对 CC 7.5 之前任何 GPU 架构的应用程序。

这一切意味着什么?

这并不意味着 CC 7.5 之前的 GPU 会突然停止工作或停止支持,而是:

  • 无法使用 CUDA 工具套件 13.0 或更高版本的 NVCC 来构建针对旧版 GPU 的新应用
  • 使用旧版 CUDA 工具包构建的应用程序,将继续在驱动程序支持的所有硬件上运行
  • NVIDIA 580 分支驱动将与 CUDA 13.0 工具包一起发布,是支持 CC 7.5 之前 GPU 的最后一个分支;它是一款 LTS 驱动,提供三年支持,一直到 2028 年年中

开发者指南

如果您要编写支持 CC 7.5 之前 GPU 的应用程序,需要安装并使用以下版本:

组件 版本 说明
NVIDIA 驱动 保持在 580 分支 提供 3 年支持,直至 2028 年
CUDA Toolkit 保持在 12.9 为 CC 7.5 之前的 GPU 架构提供离线编译支持

总之,CUDA 13.0 将取消对计算能力 7.5 之前 GPU 架构的离线编译支持。希望继续为这些 GPU 构建应用程序的开发者,应继续使用 NVIDIA 驱动分支 580 和 CUDA Toolkit 12.9。

参考链接

  • Title: CUDA架构支持指南
  • Author: 清夏晚风
  • Created at : 2026-09-24 13:53:29
  • Updated at : 2026-09-24 06:18:38
  • Link: https://blog.yuil.cn/2026/09/24/NVIDIA相关/CUDA架构支持指南/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments