Technologie

NVIDIA veröffentlicht Open-Source-GPU-Treiber

Beginnend mit den R515-Treibern hat NVIDIA begonnen, Linux-GPU-Kernelmodule als Open Source unter einer dualen GPL/MIT-Lizenz zu veröffentlichen. Der Quellcode für diese Kernel-Module ist unter NVIDIA/open-gpu-kernel-modules GitHub zu finden.

Diese Version ist ein wichtiger Schritt zur Verbesserung der Nutzung von NVIDIA GPUs in Linux, um eine engere Integration mit dem Betriebssystem zu erreichen. Diese Version ist auch für Entwickler wichtig, um Fehler zu beheben, die Integration mit dem Betriebssystem zu verbessern und verschiedene Beiträge zu leisten.

Für Anbieter von Linux-Distributionen erhöhen Open-Source-Module die Benutzerfreundlichkeit. Außerdem verbessern sie die Benutzerfreundlichkeit beim Signieren und Verteilen des NVIDIA-GPU-Treibers. Canonical und SUSE können ab sofort offene Kernel-Module mit Ubuntu und SUSE Linux Enterprise Distributionen paketieren.

NVIDIA veröffentlicht Open-Source-GPU-Treiber
NVIDIA veröffentlicht Open-Source-GPU-Treiber

Wenn Sie möchten, können Sie sehen, wie die Kernel-Ereignisplanung mit Ihrer Arbeitslast interagiert, um die Fehlersuche zu beschleunigen, indem Sie den Codepfaden folgen. Darüber hinaus können Entwickler von Unternehmenssoftware den Treiber jetzt nahtlos in den für ihr Projekt konfigurierten angepassten Linux-Kernel integrieren.

Zusammen mit den Beiträgen und Bewertungen der Linux-Endbenutzer-Community trägt dies zu einer verbesserten Qualität und Sicherheit der NVIDIA-GPU-Treiber bei.

Mit jeder neuen Treiberversion veröffentlicht NVIDIA den Quellcode auf GitHub unter NVIDIA/open-gpu-kernel-modules. Die von der Community eingereichten Patches werden geprüft und, wenn sie genehmigt werden, in die nächste Version integriert.

Weitere Informationen finden Sie in den Richtlinien und der Dokumentation von NVIDIA zur Einhaltung von Prozessen und Versionen.

Unterstützte Funktionalitäten

R515 ist die erste Veröffentlichung von offenen GPU-Kernelmodulen. Die Paketversionen der Treiber werden komplett mit Quellcode geliefert.

Dieser Code ist die endgültige, produktionsreife Version für Rechenzentrums-GPUs auf der NVIDIA Turing und NVIDIA Ampere Architektur. Ermöglicht wurde dies durch die schrittweise Einführung der GSP-Treiberarchitektur im vergangenen Jahr, die NVIDIA-Kunden den Übergang erleichtern sollte. Das Unternehmen führte auch Tests mit einer Vielzahl von Arbeitslasten durch, um die Gleichwertigkeit von Funktionen und Leistung mit dem benutzerdefinierten Kernel-Modus-Treiber sicherzustellen.

In Zukunft werden Funktionen wie HMM (Heterogeneous Memory Support) eine Kernkomponente der NVIDIA Hopper Architektur sein.

Wir können sagen, dass die Unterstützung für GeForce- und Workstation-GPUs in dieser Open-Source-Version Alpha-Qualität hat. GeForce- und Workstation-Benutzer können diesen Treiber auf NVIDIA Turing- und NVIDIA Ampere-Architektur-Grafikprozessoren verwenden, um Linux-Desktops auszuführen und Funktionen wie Vulkan, mehrere Bildschirme in NVIDIA OptiX, G-SYNC und NVIDIA RTX Raytracing zu nutzen.

Wenn Sie es vorziehen, den Kernelmodul-Parameter zu verwenden, finden Sie die Einzelheiten hier. Nachfolgende Versionen werden robustere und umfassendere GeForce- und Workstation-Unterstützung bieten, und NVIDIA Open Kernel Modules werden den Closed-Source-Treiber schließlich ersetzen.

Kunden mit NVIDIA Turing- und NVIDIA Ampere-Architektur-GPUs können wählen, welche Module sie installieren möchten. Pre-Turing-Kunden können weiterhin Closed-Source-Module verwenden.

Der Open-Source-Treiber für den Kernel-Modus arbeitet mit der gleichen Firmware und den gleichen User-Mode-Stacks wie CUDA, OpenGL und Vulkan. In diesem Fall müssen jedoch alle Komponenten des Treiberstapels mit den Versionen in einem Release übereinstimmen. Sie können zum Beispiel nicht eine Version des Quellcodes nehmen, sie bauen und sie mit einem Benutzermodus-Stack aus einer früheren oder zukünftigen Version ausführen.

Weitere Informationen zur Installation der richtigen Versionen und zur Fehlerbehebung finden Sie in der README-Datei des Treibers.

Übergang zur Installation

Die R515-Version enthält vorkompilierte Versionen sowohl des Closed-Source-Treibers als auch der Open-Source-Kernelmodule. Diese Versionen sind benutzerdefiniert und erlauben Ihnen, die Auswahl während der Installation zu treffen. Mit der Standardoption können Silent-Installationen den optimalen Pfad für NVIDIA Volta und ältere GPUs im Vergleich zu NVIDIA Turing+ GPUs wählen.

Sie können Kernel-Module aus dem Quellcode erstellen und zusammen mit den entsprechenden Treibern für den Benutzermodus installieren.

Gemeinsames Ökosystem

NVIDIA arbeitet mit Canonical, Red Hat und SUSE an besseren Paketierungs-, Bereitstellungs- und Supportmodellen für gemeinsame Kunden.

Kanonisch

„Ob KI/ML-Entwickler, Gamer oder Cloud-Nutzer, die neuen NVIDIA Open-Source-GPU-Kernel-Module vereinfachen Installationen und verbessern die Sicherheit für Ubuntu-Nutzer“, kommentiert Cindy Goldberg, Vice President of Silicon Partnerships bei Canonical. „Als Hersteller von Ubuntu, dem beliebtesten Linux-basierten Betriebssystem unter Entwicklern, können wir NVIDIA-GPUs besser in Ubuntu integrieren, um Entwickler, die an der Spitze von KI und ML arbeiten, besser zu unterstützen.“

In den kommenden Monaten werden die NVIDIA Open GPU Kernel-Module in das kürzlich veröffentlichte Canonical Ubuntu 22.04 LTS aufgenommen.

SUSE

Markus Noga, General Manager bei SUSE, sagt: „SUSE ist begeistert, dass NVIDIA seinen GPU-Kernel-Mode-Treiber als Open Source veröffentlicht hat. Dies ist ein echter Meilenstein für die Open-Source-Gemeinschaft und das Accelerated Computing. SUSE ist stolz darauf, mit SUSE Linux Enterprise 15 SP4 im Juni als erste große Linux-Distribution diesen Durchbruch geschafft zu haben. Gemeinsam erfüllen NVIDIA und SUSE viele der Anforderungen an GPU-beschleunigtes Computing, indem sie durch die Cloud, das Rechenzentrum und eine sichere Software-Lieferkette einen wichtigen Impuls geben.“

Roter Hut

Mike McGrath, Vice President of Linux Engineering bei Red Hat, sagte: „Red Hat wird von dem Prinzip angetrieben, dass ‚Enterprise Open Source Innovationen vorantreiben und die Kundenerfahrung verbessern kann. Wir begrüßen die Entscheidung von NVIDIA, seinen GPU-Kernel-Treiber als Open Source zu veröffentlichen. Red Hat arbeitet schon seit vielen Jahren mit NVIDIA zusammen und wir freuen uns, dass sie diesen nächsten Schritt machen. Wir freuen uns darauf, diese Fähigkeiten unseren Kunden zur Verfügung zu stellen und die Interoperabilität mit NVIDIA-Hardware zu verbessern.“

Vorgelagerter Ansatz

NVIDIA GPU-Treiber sind so konzipiert, dass sie über Jahre hinweg Code zwischen Betriebssystemen, GPUs und Jetson SOCs austauschen können, um ein einheitliches Erlebnis auf allen unterstützten Plattformen zu gewährleisten. Die aktuelle Codebasis entspricht nicht den Designregeln des Linux-Kernels und scheint kein Kandidat für Linux Upstream zu sein.

Die Linux-Kernel-Community plant, mit Partnern wie Canonical, Red Hat und SUSE an einem Upstream-Ansatz zu arbeiten.

In der Zwischenzeit dient der freigegebene Quellcode als Referenz, um die Entwicklung des Nouveau-Treibers zu unterstützen. Nouveau kann dieselbe Software wie der NVIDIA-Treiber nutzen, wodurch der Treiber neue Funktionen erhält und viele GPU-Funktionen wie das Takt- und Wärmemanagement zugänglich werden.

Häufig gestellte Fragen

Wo kann ich den Open-Source-GPU-Treiber herunterladen?

Sie können den R515-Entwicklungstreiber als Teil des CUDA Toolkit 11.7 oder von der Treiber-Download-Seite unter „Beta“-Treiber herunterladen. Der R515-Rechenzentrumstreiber wird in regelmäßigen Abständen in späteren Versionen folgen.

Können offene GPU-Kernelmodule verteilt werden?

Ja, NVIDIAs offene Kernelmodule sind unter einer dualen GPL/MIT-Lizenz lizenziert. Die Erlaubnis zur Verbreitung und zum Umpacken unterliegt den Lizenzbedingungen.

Wird der Quellcode für Benutzermodus-Treiber wie CUDA veröffentlicht werden?

Diese Änderungen betreffen die Kernel-Module, die Komponenten des Benutzermodus bleiben unangetastet. Der Benutzermodus bleibt quelloffen und wird mit vorgefertigten Binärdateien für den Treiber und das CUDA-Toolkit veröffentlicht.

Welche GPUs werden von offenen GPU-Kernelmodulen unterstützt?

Offene Kernel-Module unterstützen alle NVIDIA-GPUs der Ampere- und Turing-Architektur. Rechenzentrums-GPUs werden für die Produktion unterstützt. GeForce- und Workstation-GPUs werden in Alpha-Qualität unterstützt. Weitere Informationen finden Sie in den Produkttabellen für Datacentre, NVIDIA RTX und GeForce CUDA GPUs (NVIDIA Turing und spätere GPUs haben eine Rechenkapazität von 7,5 oder höher).

Wie man Fehler meldet

Sie können Probleme über den Issue Tracker in den GitHub-Repositories oder über das bestehende Endbenutzer-Supportforum melden. Bitte melden Sie Sicherheitsprobleme über die in den Sicherheitsrichtlinien des GitHub-Repositorys aufgeführten Kanäle.

Wie sieht der SLA/CLA-Prozess für die Einreichung von Patches und Patches aus?

Es wird daran gearbeitet, Anreize für die Einreichung von Beiträgen durch die Gemeinschaft über Pull Requests auf GitHub zu schaffen. Eingereichte Patches werden geprüft und, wenn sie genehmigt werden, in eine zukünftige Treiberversion integriert. Weitere Informationen finden Sie im Dokument zum NVIDIA-Treiberprozess.

Da es sich bei dem veröffentlichten Quellcode um einen Schnappschuss handelt, der aus einer gemeinsam genutzten Codebasis erstellt wurde, werden die Beiträge möglicherweise nicht als separate Git-Commits im GitHub-Repository angezeigt. Das Verfahren für die Genehmigung von Gemeinschaftsbeiträgen wird derzeit ausgearbeitet. Aus demselben Grund raten wir auch davon ab, den Code wesentlich umzuformatieren.

Das Verfahren zum Einreichen von PRs ist auf der GitHub-Seite NVIDIA/open-gpu-kernel-modules beschrieben, und solche Beiträge fallen unter das Contributor Licence Agreement.

Weitere Informationen finden Sie auf der GitHub-Seite für offene GPU-Kernelmodule NVIDIA/open-gpu-kernel-modules.

Ähnliche Artikel

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Überprüfen Sie auch
Schließen
Schaltfläche "Zurück zum Anfang"