Nach fast acht Monaten wurde die Version 2.3 des Konsolenwerkzeugs veröffentlicht. lzbench, das für den Vergleich vieler gängiger Komprimierungs- und Dekomprimierungsalgorithmen vorgesehen ist (die Liste kann mit dem Befehl lzbench -l abgerufen werden).
Das Tool ist in den Sprachen C, C++, Rust und Zig geschrieben und wird unter der GNU GPL 2 oder 3 lizenziert – je nach Wahl.
Änderungen:
- Die Gruppen von Kompressor-Pseudonymen wurden nach Typ reorganisiert – die Gruppe ALL stellt nun eine Kombination aus den Gruppen LZ, SYMMETRIC und MISC dar; die Codecs BWT/PPM (bsc, bzip2, bzip3, ppmd8) wurden in die Gruppe SYMMETRIC verschoben, während kanzi nach Algorithmen in separate Ebenen zwischen den Gruppen LZ und SYMMETRIC aufgeteilt wurde.
- Es wurden Pseudonyme für FASTEST (alle Kompressoren aus ALL nur mit maximaler Geschwindigkeit) und SLOW für sehr langsame Kompressoren (glza) hinzugefügt.
- CUDA-Codecs sind jetzt standardmäßig deaktiviert und werden nur kompiliert, wenn der Parameter ENABLE_CUDA=1 angegeben wird.
- Der Codec BSC behandelt jetzt Blöcke, deren Größe das Eingabedatenlimit überschreitet, indem er sie in Fragmente aufteilt; die maximale Eingabedatengröße des Codecs ist eine Eigenschaft des Codecs, die bei der Festlegung der Puffergrößen verwendet wird.
- Ein Build-Flag -mno-strict-align sowie das Makro SNAPPY_HAVE_RVV für RISC-V wurden hinzugefügt;
- Verschiedene Fehlerbehebungen für die Plattformen x86-32 (lzham), ARM32 sowie die Verarbeitung der Dateigröße unter Windows;
- Der Speicher für den Kompressionspuffer wurde unter Berücksichtigung der mit dem Blockpartitionierungspuffer verbundenen Overheadkosten korrigiert;
- Folgende Codecs wurden hinzugefügt:
- aceapex 1.0 (in C++)
- aceapex_cuda 0.9
- memlz 0.2 beta (in C)
- skim 0.1.0 (in Zig)
- zxc (github.com) 0.11.0 (in C)
- Die folgenden Codecs wurden aktualisiert:
- brotli auf 1.2.0
- bzip3 auf 1.5.3
- glza auf 0.12
- kanzi auf 2.5.3
- libbsc auf 3.3.12
- libdeflate auf 1.25
- lzav auf 5.8
- lzlib auf 1.16
- lzma auf 26.01
- ppmd8 auf 26.01
- quicklz auf 1.5.1 beta 7
- slz auf 1.2.2
- tamp auf 2.2.4
- xz auf 5.8.3
- zlib auf 1.3.2
- zlib-ng auf 2.3.3
Quelle: linux.org.ru




