Po prawie ośmiu miesiącach wydano wersję 2.3 konsolowego narzędzia lzbench, przeznaczonego do porównywania wielu popularnych algorytmów kompresji i dekompresji (ich lista jest dostępna za pomocą polecenia lzbench -l).
Narzędzie zostało napisane w językach C, C++, Rust i Zig oraz jest rozpowszechniane na licencji GNU GPL 2 lub 3 — według wyboru.
Zmiany:
- grupy pseudonimów kompresorów zostały zreorganizowane według typu — grupa ALL teraz stanowi połączenie grup LZ, SYMMETRIC i MISC; kodeki BWT/PPM (bsc, bzip2, bzip3, ppmd8) przeniesiono do grupy SYMMETRIC, a kanzi podzielono na oddzielne poziomy według algorytmów między grupami LZ i SYMMETRIC.
- dodano pseudonimy FASTEST (wszystkie kompresory ALL tylko z maksymalną prędkością) oraz SLOW dla bardzo wolnych kompresorów (glza).
- kodeki CUDA są teraz domyślnie wyłączone i kompilowane tylko przy określeniu parametru ENABLE_CUDA=1.
- kodek BSC teraz przetwarza bloki, których rozmiar przekracza ograniczenie na dane wejściowe, dzieląc je na fragmenty; maksymalny rozmiar danych wejściowych kodeka — to właściwość kodeka używana do określenia rozmiaru buforów;
- dodano flagę kompilacji -mno-strict-align oraz makro SNAPPY_HAVE_RVV dla RISC-V;
- różne poprawki dla platform x86-32 (lzham), ARM32, a także przetwarzanie rozmiarów plików w Windows;
- naprawiono przydzielanie pamięci dla bufora kompresji, uwzględniając koszty związane z buforem dzielenia bloków kodeka;
- dodano kodeki:
- aceapex 1.0 (w języku C++)
- aceapex_cuda 0.9
- memlz 0.2 beta (w języku C)
- skim 0.1.0 (w języku Zig)
- zxc (github.com) 0.11.0 (w języku C)
- zaktualizowano kodeki:
- brotli do 1.2.0
- bzip3 do 1.5.3
- glza do 0.12
- kanzi do 2.5.3
- libbsc do 3.3.12
- libdeflate do 1.25
- lzav do 5.8
- lzlib do 1.16
- lzma do 26.01
- ppmd8 do 26.01
- quicklz do 1.5.1 beta 7
- slz do 1.2.2
- tamp do 2.2.4
- xz do 5.8.3
- zlib do 1.3.2
- zlib-ng do 2.3.3
Źródło: linux.org.ru




