Kernel 7.2: Linux Kernel verteilt Prozesse effizienter und swapped besser
Linus Torvalds hat Version 7.2 des Linux-Kernels passend zum geplanten Veröffentlichungstermin freigegeben. Dabei sei, so Torvalds in seiner Release-Mail(öffnet im neuen Fenster), die Woche zuvor arbeitsintensiver gewesen, als er es sich gewünscht habe. Einige Änderungen hätten in letzter Sekunde zurückgenommen werden müssen, etwa am Scheduler des Rendering-Systems DRM (Direct Rendering Manager).
Die größten in der Übersicht von Kernel Newbies(öffnet im neuen Fenster) hervorgehobenen Änderungen zielen alle auf Effizienzsteigerungen. Der DRM-Scheduler bekommt trotz Reverts einen neuen Algorithmus, der sich am Completely Fair Scheduler (CFS) des Linux-Kernels orientiert. Der neue Ansatz soll bei der Zuteilung der Rechenzeit von Grafikkarten bessere Ergebnisse liefern als der bislang genutzte Fifo-Ansatz (First in, first out). Der CPU-Scheduler hingegen bezieht in seine Entscheidungen auch die Cache-Struktur ein.
Das sogenannte Cache-Aware Scheduling(öffnet im neuen Fenster) soll parallel ausgeführte Anwendungskomponenten (Threads), die Daten teilen, so verteilen, dass sie den gleichen Last Level Cache (LLC) nutzen. Vorerst wird nur für Threads eines Prozesses angenommen(öffnet im neuen Fenster), dass dies der Fall ist, komplexere Algorithmen sind in Arbeit.
Der Ansatz soll bei Prozessoren wie AMDs Epycs, bei denen jedes Chiplet einen Teil des LLC (in diesem Fall der L3-Cache) implementiert, oder Servern mit mehreren Sockeln bessere Cache-Lokalität und damit höhere Leistung ermöglichen.
Verbesserungen bei Swap und Dateisystemen
Verbesserungen am Algorithmus zur Bestimmung auf den Swap-Speicher auszulagernder Speicherseiten sollen ebenfalls Leistungssteigerungen bringen – bis zu 30 Prozent etwa bei MongoDB. Auch einige Elemente des proc-Dateisystems sind nun schneller lesbar.
Bei den Dateisystemtreibern sind NTFS und Btrfs hervorzuheben. Ersterer unterstützt native Windows-Symlinks (symbolische Verknüpfungen), Letzterer arbeitet bei sequenziellem Schreiben und direct I/O effizienter. Zudem nutzt der Btrfs-Treiber standardmäßig sogenannte Large Folios. Dabei werden mehrere hintereinanderliegende Speicherseiten logisch zusammengefasst(öffnet im neuen Fenster), was Zugriffe und Verwaltung effizienter machen kann. Die aktuelle, im Kernel 6.17 experimentell eingeführte Implementierung nutzt Folios mit maximal 64 4-kByte-Seiten. Als neues experimentelles Feature wurden Huge Folios mit 512 Seiten, also bis zu 2 MByte, eingebaut.
HDMI 2.1 kommt, i486 geht
Bereits bekannt war, dass AMD an HDMI-2.1-Unterstützung für Linux arbeitet. Der entsprechende Code wurde im Kernel 7.2 eingepflegt, ebenso wie Änderungen, die Kompatibilitätsmechanismen für ältere x86-Prozessoren entfernen. Damit fällt nach Jahren der Diskussion die Unterstützung für 486-Prozessoren sowie einige 586er ohne TSC (Timestamp Counter) und CMPXCHG8B-Operation weg.
Daneben gibt es einige eher randständige, aber dennoch erwähnenswerte Neuerungen: Der Kernel 7.2 unterstützt neben Thunderbolt Networking bei USB4-Verbindungen nun auch Streaming. Das ermöglicht, Daten an einem Ende der Verbindung wie in eine Datei zu schreiben und am anderen wie aus einer Datei zu lesen. Der Vorteil gegenüber Thunderbolt Networking ist, dass kein Netzwerk-Stack benötigt wird.
Ebenfalls neu ist die Unterstützung von Speichermedien mit integrierter Verschlüsselung durch das Modul dm-inlinecrypt. Mit Veröffentlichung des Kernel 7.2 öffnet sich das Merge-Fenster für Version 7.3, die in zwei Monaten erscheinen soll. Es gebe dafür bereits 40 Pull Requests, so Torvalds in seiner Mail zur Freigabe des Kernels 7.2.
- Anzeige Hier geht es zu Linux: Das umfassende Handbuch 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.