Nvidia veröffentlicht Open-Source-GPU-Kernelmodule für Linux
Den Anfang machen die Treiber für die Data-Center-Architekturen Turing und Ampere. Auch die Implementierung in den Linux-Kernel ist noch in Arbeit.
Nvidia hat den Quellcode für seine GPU-Kernelmodule auf GitHub veröffentlicht. Das Unternehmen stellt den Code unter den Open-Source-Lizenzen MIT und GPLv2 zur Verfügung. Nvidia räumt aber auch ein, dass der Code noch nicht bereit ist, in den Linux-Kernel aufgenommen zu werden. Daran arbeite man aber bereits mit Canonical, Red Hat und Suse.
Eine weitere Einschränkung: Laut Nvidia hat der Support für Desktop-Grafikkarten bisher noch Alpha-Qualität. Für den produktiven Einsatz sei der Open-Source-Treiber nur für die auf Rechenzentren ausgerichteten Produktreihen Turing und Ampere geeignet. Unterstütz werden bei beiden Architekturen mehrere Displays, G-Sync, OptiX und RTX Ray Tracing in Vulkan.
“In der Zwischenzeit dient der veröffentlichte Quellcode als Referenz, um den Nouveau-Treiber zu verbessern”, so Nvidia weiter. “Nouveau kann dieselbe Firmware nutzen, die auch der Nvidia-Treiber verwendet, und so viele GPU-Funktionen wie Takt- und Wärmemanagement freigeben, was dem Nouveau-Treiber im Tree neue Funktionen verleiht.”
Große Teile des Treibers sind weiterhin Closed-Source
Zum Nouveau-Treiber erklärte indes Christian Schaller, Direktor von Red Hat: “Dies ist nur der Kernel-Teil, ein großer Teil eines modernen Grafiktreibers ist in der Firmware und den Userspace-Komponenten zu finden und diese sind immer noch Closed Source. Aber es bedeutet, dass wir jetzt einen Nvidia-Kernel-Treiber haben, der in der Lage sein wird, die GPL-only-APIs im Linux-Kernel zu verwenden, obwohl diese erste Version keine APIs verwendet, die der alte Treiber nicht schon verwendet hat.”
Schaller fügte hinzu, dass sowohl die bestehende Nvidia-Binärdatei als auch der Nouveau-Treiber bestehen bleiben werden, auch wenn der neue Open-Source-Treiber entwickelt wird. “In nächster Zeit wird es keine großen Auswirkungen haben. Aber mit der Zeit bietet er einen Weg, die Unterstützung von Nvidia-Hardware radikal zu vereinfachen.”
Schaller hofft, dass Nvidia-Hardware langfristig eine ähnliche Nutzererfahrung bieten wird, wie sie heute für Intel- und AMD-Hardware zur Verfügung steht. “Das bedeutet Day-1-Support für neue Chipsätze, einen hochleistungsfähigen Open-Source-Mesa-Treiber für Nvidia und es wird uns erlauben, den Nvidia-Treiber zusammen mit dem Rest des Kernels zu signieren, um Dinge wie Secureboot-Support zu ermöglichen.”
Die Linux-Community kritisiert schon seit vielen Jahren den fehlenden Support durch Nvidia. 2012 beschrieb Linus Torvalds Nvidia sogar als das “schlimmste Unternehmen, mit dem wir je zu tun hatten”.