NVIDIA 全面转向开源 GPU 内核模块
文章目录
借助 R515 驱动程序,NVIDIA 于 2022 年 5 月发布了一组 Linux GPU 内核模块,作为具有双重 GPL 和 MIT 许可的开源模块。初始版本针对数据中心计算 GPU,GeForce 和 Workstation GPU 处于 alpha 状态。
当时,NVIDIA宣布,后续版本将提供更强大、功能更全面的 GeForce 和 Workstation Linux 支持,NVIDIA 开放内核模块最终将取代闭源驱动程序。
NVIDIA GPU 共享通用的驱动程序架构和功能集。您的台式机或笔记本电脑的同一驱动程序在云中运行世界上最先进的 AI 工作负载。对NVIDIA来说,做到恰到好处非常重要。
两年过去了,NVIDIA利用开源 GPU 内核模块实现了同等甚至更好的应用程序性能,并增加了大量新功能:
- 异构内存管理 (HMM) 支持
- 机密计算
- NVIDIA Grace 平台的一致内存架构
- 还有更多
现在,NVIDIA正处于完全过渡到开源 GPU 内核模块的正确时机,NVIDIA将在即将发布的 R560 驱动程序版本中进行这一改变。
支持的 GPU
并非所有 GPU 都与开源 GPU 内核模块兼容。
对于 NVIDIA Grace Hopper 或 NVIDIA Blackwell 等尖端平台,您必须使用开源 GPU 内核模块。这些平台不支持专有驱动程序。
对于 Turing、Ampere、Ada Lovelace 或 Hopper 架构的较新 GPU,NVIDIA 建议切换到开源 GPU 内核模块。
对于 Maxwell、Pascal 或 Volta 架构的较旧 GPU,开源 GPU 内核模块与您的平台不兼容。继续使用 NVIDIA 专有驱动程序。
对于在同一系统中混合部署较旧和较新 GPU,请继续使用专有驱动程序。
如果您不确定,NVIDIA 提供了一个新的检测帮助脚本来帮助指导您选择哪个驱动程序。有关更多信息,请参阅本文后面的使用安装帮助脚本部分。
安装程序更改
一般来说,所有安装方法安装的驱动程序的默认版本都是从专有驱动程序切换到开源驱动程序。有几个特定场景值得特别注意:
- 带有 CUDA 元包的包管理器
- 运行文件
- 安装帮助脚本
- 包管理器详细信息
- 适用于 Linux 的 Windows 子系统
- CUDA 工具包
使用带有 CUDA 元包的包管理器
当您使用包管理器(而不是 .run 文件)安装 CUDA Toolkit 时,安装元包存在并且很常用。通过安装顶级 cuda 包,您可以安装 CUDA Toolkit 和相关驱动程序版本的组合。例如,通过在 CUDA 12.5 发布时间范围内安装 cuda,您将获得专有的 NVIDIA 驱动程序 555 以及 CUDA Toolkit 12.5。
下图显示了此包结构。
以前,使用开源 GPU 内核模块意味着您无法使用顶级元包。您必须安装特定于发行版的 NVIDIA 驱动程序开放包以及您选择的 cuda-toolkit-X-Y 包。
从 CUDA 12.6 版本开始,流程有效地切换了位置(下图)。