Linux: Kernel-Entwickler diskutieren Subsystem für KI-Beschleuniger
Wegen der wachsenden Anzahl an Hardware zum Beschleunigen von Deep-Learning- und Machine-Learning-Aufgaben sollen deren freie Treiber im Linux-Kernel in einem gemeinsamen Subsystem vereinheitlicht werden. Bisher sind die Treiber auf verschiedene Bereiche im Kernel verteilt. Die nun von Entwickler Olof Johansson zur Umsetzung des neuen Subsystems vorgeschlagenen Patches(öffnet im neuen Fenster) sind das Ergebnis einer längeren Diskussion, der die Veröffentlichung von Patches zur Unterstützung eines neuen Beschleunigers vorausgegangen war.
Johansson und der Betreuer der stabilen Zweige des Linux-Kernels, Greg Kroah-Hartman, wollen künftig die Pflege dieses neuen Subsystems übernehmen. Ziel ist es vor allem, die Treiber der unterschiedlichen Hardware künftig einfacher finden zu können und die Kollaboration zwischen den Beitragenden in diesen Bereichen zu verbessern. Darüber hinaus könnten in dem Subsystem künftig Frameworks entstehen, die von mehreren Treibern wiederverwendet werden sollen. Welche Funktionen diese haben könnten, ist derzeit aber noch nicht klar.
Grafikentwickler nicht zufrieden
Kritik an dem geplanten Vorgehen kommt vor allem von den Entwicklern der Grafiktreiber im Linux-Kernel. Denn anders als etwa für die GPUs zwingend vorausgesetzt, sollen die Userspace-Bestandteile der Beschleunigertreiber wenn überhaupt nur als minimale Zwischenschicht unter einer Open-Source-Lizenz bereitstehen. So beschreibt etwa der Betreuer der GPU-Treiber(öffnet im neuen Fenster), Dave Airlie, dass ohne Wissen über die Funktionen des Userspace-Treibers die API schlimmstenfalls Sicherheitslücken beinhalten könnte. Ebenso werde die Kernel-Community damit langfristig auf eine API festgelegt, die kaum geändert werden könnte, selbst wenn es künftig eine bessere Open-Source-Implementierung des Userspace geben sollte.
Ähnlich argumentiert auch der langjährige Betreuer des Intel-Grafiktreibers Daniel Vetter in einem Beitrag auf der Mailing-Liste(öffnet im neuen Fenster). Wenn etwa der Hersteller der Hardware oder auch dessen Entwickler verschwinden, müsse die Kernel-Community plötzlich unfreiwillig Code pflegen, der nicht verstanden wird. Darüber hinaus könnten zum Beispiel Fehler im Userspace-Teil nicht behoben werden. Dass Airlie, Vetter und auch andere Grafiktreiber-Entwickler so argumentieren, liegt wohl an deren Erfahrung der vergangenen Jahrzehnte mit verschiedenen Herstellern und deren Treibern. Für Vetter gibt es zudem keine technischen Unterschiede(öffnet im neuen Fenster) zwischen einem Treiber für einen Beschleuniger oder eben dem Treiber für eine GPU.
Der Unterstützer des Beschleuniger-Subsystems, Kroah-Hartman, sieht das erwartungsgemäß anders(öffnet im neuen Fenster) und begründet das vor allem damit, dass sämtliche Linux-Nutzer durch das Einpflegen des Codes schnell Zugriff auf die neue Hardware erhalten können. In einem recht langen Kompromissvorschlag deutet Vetter allerdings an(öffnet im neuen Fenster), dass er dem Erstellen des neuen Subsystems zustimmen könnte.
Dazu müsste der Rest der Community nur akzeptieren, dass es eine Überschneidung zwischen dem Code für GPUs und jenem für die Beschleuniger gibt und die Entwickler damit doppelte Funktionalität umsetzen. Immerhin arbeitet die Community der Linux-Grafikentwickler derzeit an einer einheitlichen und freien Alternative zu Techniken wie Nvdias Cuda, das auf Grundlage des Treibercodes für GPUs entsteht.
- Anzeige Hier geht es zu Künstliche Intelligenz: Wissensverarbeitung bei Amazon Wenn Sie auf diesen Link klicken und darüber einkaufen, erhält Golem eine kleine Provision. Dies ändert nichts am Preis der Artikel.



