News Nvidia unter Linux: Freie Kernel-Module kommen mit GeForce-Treiber-Serie 560

Kaito Kariheddo

Redakteur
Teammitglied
Registriert
Dez. 2021
Beiträge
654
Nvidia hat im eigenen Entwickler-Forum angekündigt, dass mit der kommenden 560er Treiberserie freie Kernel-Module für Linux einziehen, die mit Grafikkarten ab der Turing-Generation (RTX 2000 oder GTX 16xx) zum Einsatz kommen können. Die Option zum Installieren des proprietären Modules bleibt bestehen.

Zur News: Nvidia unter Linux: Freie Kernel-Module kommen mit GeForce-Treiber-Serie 560
 
  • Gefällt mir
Reaktionen: Grimey, Dama, agon und 26 andere
kann mir DAU jemand erklären, was jetzt die Neuerung im Vergleich zu der im letzten Absatz erwähnten änderung aus dem Jahr 2022 ist? danke :)
 
Der Treiber besteht aus mehreren Komponenten, zum Beispiel den Modulen zur Ansteuerung der Hardware selbst oder um beispielsweise Vulkan-Befehle auf der Karte auszuführen. Normalerweise gibts alles proprietär von Nvidia als Treiber(Paket). Dort werden die Kernel-Module mit kommender Version 560 ganz auf Open Source setzen. Man könnte aber auch nur die Kerne Module nehmen und mit einem freien Vulkan Treiber (NVK) kombinieren um ohne den Nvidia Treiber auszukommen
 
  • Gefällt mir
Reaktionen: SFFox, flo.murr, FreshTech und 10 andere
vielleicht sollte man noch hervorheben, dass das zwar ein kernel-modul, aber nicht teil des kernels ist. d.h. es muss weiterhin separat installiert werden. bei amd/intel ist das schon alles im kernel drin.
 
  • Gefällt mir
Reaktionen: GrenSo, aid0nex, mojitomay und 9 andere
Jetzt müsste der "freie" Kerneltreiber nur noch tatsächlich einen relevanten Funktionsumfang bieten und mehr sein, als nur ein glorifizierter Loader für den gigantischen Blob :freak:
Aber bei NV muss man ja um jeden Millimeter Entgegenkommen froh sein ;)
 
  • Gefällt mir
Reaktionen: GrenSo, palladium.-, aid0nex und 9 andere
Ist der "Blob" nicht einfach die Firmware auf der Graka selbst? Nicht ganz so frei wie die AMD Treiber, aber besser als binaries auf OS Ebene finde ich.
 
  • Gefällt mir
Reaktionen: floTTes
Schöne Entwicklung, nachdem ich selbst die Erfahrung gemacht habe, dass Nvidia unter Linux krebsig ist. Es geht auf jeden Fall in die richtige Richtung.

(Hoffentlich soweit, dass ich ganz auf Windows verzichten kann!)
 
  • Gefällt mir
Reaktionen: Skidrow
tipmyredhat schrieb:
Ist der "Blob" nicht einfach die Firmware auf der Graka selbst? Nicht ganz so frei wie die AMD Treiber, aber besser als binaries auf OS Ebene finde ich.
Jein.
Dieses Ding ist seit früheren Generationen deutlich größer geworden und übernimmt deutlich mehr Prozesse selbst die früher der Treiber gemacht hat.
Da liegt nahe dass man dort Dinge versteckt die man nicht im Treiber offen legen will. Hat ein gewissen komischen Beigeschmack.
 
  • Gefällt mir
Reaktionen: Kaulin, GokuSS4, aid0nex und 5 andere
riloka schrieb:
Da liegt nahe dass man dort Dinge versteckt die man nicht im Treiber offen legen will
Einerseits ja, andererseits gibt es gute technische Gründe dafür. Man will ja möglichst viel Aufgaben auf die GPU auslagern, um den Overhead auf der CPU für den Betrieb der GPU zu verringern. Treiber-Overhead war für Nvidia in jüngerer Vergangenheit tatsächlich auch ein Problem im Vergleich zu AMD (auch wenn das nur in speziellen Situationen zum Vorschein kam, wie "wir stecken eine 4090/7900XTX in einen Rechner mit i7 7700K").
 
  • Gefällt mir
Reaktionen: stevefrogs und 0xffffffff
stefan92x schrieb:
Einerseits ja, andererseits gibt es gute technische Gründe dafür.
na wenn es nur technische gründe sind, dann können sie ja ihre firmware auch öffnen oder zumindest das laden eigener firmware ermöglichen. geht nicht? hmm... :)
 
  • Gefällt mir
Reaktionen: aid0nex, nobody360, blackiwid und 3 andere
Hat das mit dem Stinkefinger von Linus Torvalds zu tun.
 
  • Gefällt mir
Reaktionen: drdoctor, Fabii02, GrenSo und 7 andere
0x8100 schrieb:
vielleicht sollte man noch hervorheben, dass das zwar ein kernel-modul, aber nicht teil des kernels ist. d.h. es muss weiterhin separat installiert werden. bei amd/intel ist das schon alles im kernel drin.
Ist das nicht der Weg hin zur künftigen Integration in den Kernel? Sorry, so richtig blicke ich da bis Heute nicht durch.
 
  • Gefällt mir
Reaktionen: Nine-tailed Fox
0x8100 schrieb:
na wenn es nur technische gründe sind, dann können sie ja ihre firmware auch öffnen oder zumindest das laden eigener firmware ermöglichen. geht nicht? hmm... :)
Ich wills man so rum sagen: Ich bin mir sicher, dass Nvidia Dinge hat, die sie geheim halten wollen. Wenn sie diese Komponenten aus dem Treiber raus und in die Firmware rein verlagern, weil sie den Overhead reduzieren wollen, ermöglicht es ihnen als Nebenprodukt mehr Open Source zu machen, weil es dann nicht mehr darauf ankommt und es ja tatsächlich das Leben leichter macht. Aber ich glaube nicht daran, dass es hier um "Good Guy Nvidia" geht, die plötzlich mehr Open Source machen, weil sie ihre Meinung darüber grundsätzlich ändern.
Ergänzung ()

Marmormacker schrieb:
Ist das nicht der Weg hin zur künftigen Integration in den Kernel? Sorry, so richtig blicke ich da bis Heute nicht durch.
Ja, ist es generell, wenn Nvidia den eventuell steinigen Weg gehen will. Integration in den Kernel bedeutet eben auch, dass das dann durch den Code-Review der Kernel-Maintainer gehen muss, und ob der Code da durchkommen würde, ist eine offene Frage - längst nicht jeder eingereichte große Change kam da durch, über manche Themen wurde jahrelang gestritten, bis die endlich im Kernel angekommen waren, weil es so lange gedauert hat, bis das in einer akzeptablen Form vorlag.

Es kann durchaus sein, dass der offene Code in einer Art und Weise geschrieben ist, dass er von Torvalds und Co als inakzeptabel betrachtet wird, und daher - selbst wenn Nvidia das überhaupt versuchen sollte - nicht im Kernel aufgenommen wird.
 
  • Gefällt mir
Reaktionen: stevefrogs, Kaulin, Charminbaer und 7 andere
Marmormacker schrieb:
Ist das nicht der Weg hin zur künftigen Integration in den Kernel? Sorry, so richtig blicke ich da bis Heute nicht durch.
es ist der richtige weg, ja. aber es ist noch längst nicht so bequem wie mit intel/amd. da dort alles "in-tree" ist, bekommt man bei einem neuen kernel-release gleich alles fertig mit. dieses nvidia-modul muss z.b. neu installiert werden, wenn man den kernel aktualisiert.

stefan92x schrieb:
Aber ich glaube nicht daran, dass es hier um "Good Guy Nvidia" geht, die plötzlich mehr Open Source machen, weil sie ihre Meinung darüber grundsätzlich ändern.
das ist richtig. wie ich das mitbekommen habe, haben im kommerziellen umfeld die leute auch immer weniger lust auf den maintenance-aufwand mit nvidia und da dort nunmal das geld sitzt, bewegt sich nvidia nun auch endlich mal etwas.
 
  • Gefällt mir
Reaktionen: Marmormacker
Sehr schön. Ich habe zwar keine RTX basierte GPU, aber da kann man dann hoffen, dass zukünftige Modelle ebenfalls unterstützt werden.

erzieler schrieb:
Hat das mit dem Stinkefinger von Linus Torvalds zu tun.
Nicht unbedingt. Eventuell hatte NVIDIA auch nur so ein Sinneswandel oder LAPSUS$ hat NVIDIA "überredet".
 
  • Gefällt mir
Reaktionen: Charminbaer und erzieler
stefan92x schrieb:
Man will ja möglichst viel Aufgaben auf die GPU auslagern, um den Overhead auf der CPU für den Betrieb der GPU zu verringern.
Das. Ein weiterer wichtiger Aspekt von diesem Vorgehen ist, dass architekturspezifische Dinge eben direkt auf der GPU verortet sein können, mit einem einheitlichen Interface zur CPU bzw. zum OS. Man muss quasi nur noch einen einheitlichen "BLOB" pro GPU-Architektur pflegen, mit einem dünnen Wrapper für das Ziel-OS. Weniger Aufwand, weniger Fehlerquellen etc...

Also weniger "Treiber" im OS dafür mehr "Treiber" der direkt auf der GPU läuft.

@riloka Wenn dir das einen Beigeschmack gibt, dann beschäftige dich lieber mal nicht mit Dingen wie z.B. Intel ME/AMT, CPU Microcodes usw... Viele Hardwarekomponenten (CPU, GPU, Netzwerkchip...) laufen nur noch mit irgendwelchen Firmware-Blobs. Und manche Hardware hat sogar dedizierte Co-Prozessoren auf denen teils ein eigenes "OS" läuft. Für Missbrauch ist die GPU da fast noch am uninteressantesten, da diese idR. keinen direkten Netzwerkzugriff hat.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: floTTes
stefan92x schrieb:
Ich wills man so rum sagen: Ich bin mir sicher, dass Nvidia Dinge hat, die sie geheim halten wollen.
Sicher. Macht AMD ja leider auch.
Nur ist der Blob bei NVidia eben bedeutend größer als bei AMD. Wenn man das also bei AMD (zurecht) kritisiert, dann muss man es bei NV gleich 5x kritisieren.
 
  • Gefällt mir
Reaktionen: GrenSo
Wayland support wäre echt mal nice ... X11 ist schon Steinzeit zeug und gehört ins Museum :D
 
  • Gefällt mir
Reaktionen: Feuerbiber
BrollyLSSJ schrieb:
Eventuell hatte NVIDIA auch nur so ein Sinneswandel oder LAPSUS$ hat NVIDIA
Hatte auch Gerüchte gelesen, dass es eventuell mit der Switch 2 zu tun hat.. Ist aber auch schon Jahre her 😅
 
Termy schrieb:
Nur ist der Blob bei NVidia eben bedeutend größer als bei AMD.
Wobei man dazu sagen muss, dass NVidia aber auch ein bisschen mehr Laufzeitumgebungen huckepack hat. Ich denke z.B. CUDA sowie das ganze DLSS/Tensor-Zeug wird da auch seinen Platz einfordern.
 
  • Gefällt mir
Reaktionen: stevefrogs, floTTes und schneeland
Zurück
Oben