出品|开源中国

文|罗奇奇

5 月 11 日 ,NVIDIA 在博客中宣布以 GPL/MIT 双重许可正式开源其 Linux GPU 内核模块。

众所周知,不同于老对手 AMD 对开源的热情,NVIDIA 一直非常抗拒拥抱开源。尽管他们提供了出色的 Linux 驱动程序支持,但其私有闭源驱动却饱受 Linux 社区诟病。比如赫赫有名的 Linus 中指 “So,fxxk you NVIDIA”,Fedora 项目负责人也曾发文抨击 NVIDIA 的专有驱动软件栈。如今 NVIDIA 直接把整个 Linux GPU 内核模块开源,实在是出乎意料。

nvidia智能架构(活久见NVIDIA正式开源其)(1)

目前,此 NVIDIA Open GPU 内核模块的第一个版本是 R515,除了源代码之外,还提供了驱动程序的完全构建和打包版本。

  • 对于 NVIDIA Turing 和 NVIDIA Ampere 架构系列中的数据中心 GPU,这些代码可用于生产。

  • 对于 GeForce 和工作站 GPU,这些代码被认为是 “alpha 版本的质量”

  • 拥有 Turing 和 Ampere GPU 的客户可以选择安装哪些模块。

  • Pre-Turing 客户将继续运行闭源模块。

注意: R515 版本中提供了闭源驱动程序和开源内核模块的预编译版本,这些驱动版本是互斥的,用户可以在安装时进行选择。

nvidia智能架构(活久见NVIDIA正式开源其)(2)

而据 NVIDIA 的说法,此举只是该公司更广泛的开源计划的第一步,旨在 “改善在 Linux 中使用 NVIDIA GPU 的体验、与操作系统更紧密集成以及方便开发人员调试、集成和回馈”。

目前,Ubuntu、Red Hat 和 SUSE 都在准备打包和使用该开放内核模块,比如 Ubuntu 表示会在短期内将其用于最近的 Ubuntu 22.04 LTS 版本。

但这些内核模块还无法上游化,因为 “当前的代码库不符合 Linux 内核设计惯例”。毕竟之前为了省事, NVIDIA 在 Linux 上的专有驱动程序用的还是跨 Windows / Linux / FreeBSD / Solaris 几大平台的同一套代码,要使其在 Linux 内核中上游化,可能需要进行更多重构以迎合 Linux。但 NVIDIA 表示它已计划与 Linux 内核社区合作,以改善这种情况。

目前该 Linux GPU 内核模块的源代码托管在 GitHub 上的 NVIDIA Open GPU Kernel Modules 仓库中。R515 Linux beta 驱动程序可以在 NVIDIA.com 上下载。


,