Btrfs-Dateisystem soll schnellere Zstd-Dekomprimierung erhalten
Technologie
⚠ Einzelquelle
13m ago

Btrfs-Dateisystem soll schnellere Zstd-Dekomprimierung erhalten

KI-synthetisiert · Voreingenommenheit entfernt · Nur Fakten
Image: Phoronix

Der Linux-Entwickler Usama Arif hat eine Ineffizienz im Zstd-Dekomprimierungscode des Btrfs-Dateisystems entdeckt und behoben, was zu Leistungsverbesserungen führt. Der Fix, der für die Aufnahme in den Linux 7.4 Kernel-Zyklus vorgesehen ist, reduziert redundantes Datenbeschreiben während der Dekomprimierung.

Derzeit schreibt der Btrfs Zstd-Dekomprimierungspfad jedes gelieferte Byte zweimal. Laut Arif „gibt zstd_decompress_bio() zstd einen Scratch-Buffer in Sektorgröße und btrfs_decompress_buf2page() kopiert dann den Teil, der mit dem gelesenen Bio überlappt, in die Ziel-Folios. Jedes gelieferte Byte wird zweimal geschrieben.“ Die vorgeschlagene Lösung umgeht diese Duplizierung, indem sie den Ausgabepuffer pro Streaming-Aufruf auswählt und `zstd_map_dest()` verwendet, um das Ziel direkt an den Page-Cache zu mappen.

Tests zeigen eine Reduzierung der sequentiellen Lesezeit um 7,8 % mit 4K-Sektorgrößen, 3,6 % mit 16K-Sektoren und 6,8 % mit 64K-Sektoren. Auch zufällige 4K-Lesevorgänge zeigten eine Verbesserung von etwa 3 % bei Verwendung von Btrfs mit aktivierter Zstd-Kompression. Der Patch befindet sich derzeit im „for-next“-Branch und wird voraussichtlich in der Linux 7.4 Kernel-Version enthalten sein, die für Oktober geplant ist. Die Entwickler hoffen auch, weitere Zstd-Kernel-Verbesserungen in derselben Version einzubeziehen.

War das hilfreich?

Originale Berichterstattung lesen

💬 Kommentare

📜 Kommentar-Richtlinie