NVIDIA veröffentlicht Treiber mit Offenheitsgeschmack

In diesem Jahr haben wir schon ansehnliche gesehen Lecks des NVIDIA-Quellcodes, und eine Veröffentlichung von Open-Source-Treibern für NVIDIA Tegra. Es scheint, dass NVIDIA beschlossen hat, es zu verstärken, und gerade veröffentlicht wurde Open-Source-GPU-Kernel-Module für Linux. Tee GitHub-Link genannt open-gpu-kernel-modules hat Leute beigetreten, und wir testen bereits den Code, erstellen Memes und spekulieren über die Zukunft. Dieser Treiber gilt derzeit als experimentell, nur „produktionsreif“ für Rechenzentrumskarten – aber Sie können ihn bereits ausprobieren!

Natürlich gibt es Nuancen. Dies ist neuer Code und hat nichts mit dem bekannten proprietären Treiber zu tun. Es funktioniert nur auf Karten ab der RTX 2000- und Quadro RTX-Serie (alias Turing und höher). Die gute Nachricht ist, dass die Leistung stimmt vergleichbar mit dem Closed-Source-Treiber, auch an dieser Stelle! Eine Besonderheit dieses Projekts – ein guter Teil der Funktionen, die AMD- und Intel-Treiber im Linux-Kernel implementieren, sind stattdessen bereitgestellt von einem binären Blob innerhalb der GPU. Dieser Blob läuft auf dem GSP, einem RISC-V-Kern, der nur auf Turing-GPUs und jünger verfügbar ist – daher die Beschränkung der Serie. Jetzt lädt jede GPU ein Stück Firmware, aber dieser ist kräftig!

Abgesehen davon bietet dieser Treiber bereits eine kohärentere Integration in den Linux-Kernel mit massiven Vorteilen, die in Zukunft nur noch zunehmen werden. Noch ist nicht alles offen – NVIDIAs Userspace-Bibliotheken und OpenGL-, Vulkan-, OpenCL- und CUDA-Treiber bleiben vorerst geschlossen. Das Gleiche gilt für den alten proprietären NVIDIA-Treiber, der meiner Meinung nach verrotten würde – passend, da dieser Treiber Generationen von alten, aber perfekt brauchbaren Karten zuvor „verrotten“ ließ.

Der Upstream dieses Treibers wird sicherlich ein gigantischer Aufwand sein, aber das ist definitiv das Ziel, und die Vorteile werden auch beträchtlich sein. Selbst so wie er ist, hat dieser Treiber viel mehr Potenzial. Ähnlich wie ein britischer Polizist überprüft der Linux-Kernel die Lizenz jedes Kernel-Moduls, das er lädt, und schränkt die APIs ein, die er verwenden kann, wenn er nicht GPL-lizenziert ist – was der vorherige NVIDIA-Treiber nicht war, da seine offenen Teile im Wesentlichen waren eine dünne Schicht zwischen dem Kernel und den Binärtreibern und daher nicht GPL-lizenzierbar. Denn dieser Fahrer ist MIT/GPL lizensiert, Sie verfügen nun über eine größere Auswahl an Schnittstellen und könnten sie besser in das Linux-Ökosystem integrieren, anstatt über eine Reihe proprietärer Tools zu verfügen.

Eine GPU auf einer Art Riser-Karte mit einer Raspberry Pi Compute Module-Box davor
Jetzt mit 65 % mehr Fahrer pro Fahrer!

Die Debugging-Fähigkeiten, die Sicherheit und das allgemeine Integrationspotenzial sollten sich verbessern. Darüber hinaus eröffnen sich eine ganze Reihe neuer Möglichkeiten. Zunächst einmal öffnet es definitiv die Tür für die Portierung des Treibers auf andere Betriebssysteme wie FreeBSD und OpenBSD und könnte sogar dazu beitragen, das Computing zu befreien. Die NVIDIA-GPU-Unterstützung auf ARM wird in Zukunft einfacher werden, und wir könnten mehr sehen cooler Versuch um die Vorteile zu nutzen, bei denen uns GPUs helfen, wenn sie mit einem ARM SBC gekoppelt sind, von aufregenden Videospielen bis hin zu leistungsstarkem maschinellem Lernen. Die Red Hat-Veröffentlichung sagt, dass in Bezug auf die ordnungsgemäße Integration von NVIDIA-Produkten in das Linux-Ökosystem noch mehr kommen wird, keine Steine ​​auf dem anderen.

Sie werden im Allgemeinen sehen, dass jeder dies aus guten Gründen begrüßt. Traditionell feiern wir solche radikalen Schritte, auch wenn sie unvollkommen sind, von großen Unternehmen – und das zu Recht angesichts der Vorteile, die ich gerade aufgelistet habe, und des Zukunftspotenzials. Wenn wir mehr solche Schritte von großen Spielern sehen, werden wir uns über viele Dinge freuen können, und eine Vielzahl von Problemen werden in der Vergangenheit liegen bleiben. Wenn es jedoch um Offenheit für das geht, was wir schätzen, wird die Situation irgendwie seltsam und schwer zu bewältigen.

Offenheit hilft uns, Funktionen hinzuzufügen, die wir brauchen, Probleme zu lösen, auf die wir stoßen, neue Dinge aus der Arbeit anderer zu lernen und die Grenzen zu erkunden, während wir mit Technologien interagieren, die immer mehr unser Leben bestimmen. Wenn man all den aufregenden Science-Fiction-Literatur glauben darf, die wir als Kinder gelesen haben, sind wir tatsächlich dazu bestimmt, mit der Technologie zusammenzuarbeiten. Dieser Treiber ist in vielerlei Hinsicht nicht die Art von Offenheit, die unserer Hardware hilft, uns zu helfen, aber er überprüft sicherlich viele Kästchen auf das, was wir als „offen“ wahrnehmen. Wie sind wir hierher gekommen?

Es ist bekannt, dass große Unternehmen nicht jeden einzelnen Teil des Codes öffnen – Sie müssen die DRM-Bits und die Patentverletzungen irgendwo verstecken. Hier läuft ein Großteil des Codes, der sich früher im proprietären Treiber befand, jetzt auf einer anderen CPU und ist so intransparent wie zuvor. Kein Treiber verlässt sich so sehr auf binären Blob-Code wie dieser, und doch ist es halb ironischerweise nicht so weit davon entfernt könnte technisch RYF-zertifiziert werden. Es ist nur so, dass die anstößigen binären Blobs jetzt „Firmware“ statt „Software“ sind.

Foto eines Thinkpad X200 auf einem Schreibtisch, Display zeigt ein GRUB-Menü mit einem niedlichen Bild des GNU-Maskottchens im Hintergrund
Etwas ist Freunde, wenn dies als offener angesehen wird als Novena

Der RYF (Respektiere deine Freiheit) Zertifizierung von der Free Software Foundation, obwohl gut gemeint, hat in letzter Zeit Wärme gezogen für seine Ziele kontraproduktiv zu sein und Hardware herzustellen komplexer ohne Notwendigkeit, und sogar der Libreboot-Projektleiter sagt, dass seine Prinzipien zu wünschen übrig lassen. Wir haben die RYF-Zertifizierung implizit als Richtschnur für Offenheit betrachtet, die wir anstreben, aber die Novena Laptop Sache nicht haften dazu und ist sicherlich besser dran. Wir können viel von RYF lernen, und das ist ganz klar wir brauchen mehr Hilfe.

Von hier aus – was nehmen wir als „offen“? Und wer kann uns helfen, den Überblick darüber zu behalten, was „offen“ ist – insbesondere die Art von Offenheit, die uns zu einer utopischeren, aber realistischeren Welt bewegt, in der unsere Beziehung zur Technologie gesund und liebevoll ist? Einige Leitlinien und Prinzipien helfen uns zu überprüfen, ob wir auf dem richtigen Weg bleiben – und die Welt hat sich so verändert, dass alte Vorstellungen nicht immer gelten, genau wie bei die in der Cloud gehostete Softwarelücke das erweist sich schwierig zu lösen.

Aber trotzdem wurde gerade viel mehr Code geöffnet, und das ist an einigen Fronten ein Gewinn. Gleichzeitig werden wir nicht dort ankommen, wo wir sein wollen, wenn andere Unternehmen sich entscheiden, an diesem Beispiel festzuhalten, und als Hacker werden wir viele der bahnbrechenden Dinge nicht erreichen, die Sie mit Open-Source-Tools erreichen werden in unseren Händen. Und wenn wir nicht vorsichtig sind, könnten wir dies mit der Art von Offenheit verwechseln, von der wir alle hierher kommen, um zu lernen. Es ist also eine gemischte Tüte.

Wie bereits erwähnt, ist dieser Treiber für die RTX-Serie 2000 und darüber hinaus. Alte Karten sind immer noch entweder auf den proprietären Treiber oder auf New beschränkt – was in der Vergangenheit von NVIDIA gelähmt wurde. Ein typisches Beispiel: NVIDIA hat in den letzten Jahren wichtige Funktionen wie die Uhrsteuerung neu implementiert auf eine Weise, die nur durch a zugänglich ist signierter Firmware-Shim mit geschlossener API, der schwer rückzuentwickeln ist, und ist seitdem unkooperativ – was hat verletzt das neue Projekt ohne Abhilfe in Sicht. Im Gegensatz zu AMD, das bei der Überarbeitung des Codes für die Karten hilft, die veröffentlicht wurden, bevor ihr offener Treiber fallen gelassen wurde, wird dieses Problem bestehen bleiben.

Von hier aus wird New jedoch weiterleben. Teilweise wird es immer noch für ältere Karten verwendbar sein, die nirgendwo hingehen, und teilweise scheint es helfen zu können, die oben genannten Userspace-Bibliotheken zu ersetzen, die Closed-Source bleiben. Tee offizielle NVIDIA-Release-Seite sagt, es sei nicht unmöglich, dass New Bemühungen und die NVIDIA Open Driver Bemühungen zu einem verschmolzen werden könnten, ein Sieg für alle, auch wenn er ein bisschen bittersüß ist.

Aufgrund von Engpässen erhalten Sie möglicherweise sowieso keine GPU, auf der Sie diesen Treiber ausführen können. Allerdings werden wir uns von der Knappheit und dem durch den Bergbau verursachten Wahn erholen, und die Preise werden bis zu dem Punkt sinken, an dem unsere Systeme besser funktionieren werden – vielleicht nicht Ihr mit MX150 ausgestatteter Laptop, aber sicherlich eine ganze Menge leistungsstarker Systeme, die wir noch haben werden bauen. NVIDIA ist noch nicht da, wo AMD und Intel stehen, aber sie sind auf dem Weg dorthin.

[Tux penguin image © Larry Ewing, coincidentally remixed using GIMP.]

Leave a Comment

Your email address will not be published.