[devel] ускорение lzma декомпрессии (XZ Utils)
Ilya Kurdyukov
ilyakurdyukov на basealt.ru
Вт Дек 14 05:53:56 MSK 2021
> Пожалуйста, пришлите какие команды надо запустить, чтоб собрать и
> протестировать то, что вам нужно.
git clone git://git.altlinux.org/gears/x/xz.git
cd xz
patch -p1 < faster_lzma_decoder_x86.patch
Патч здесь:
> https://gist.github.com/ilyakurdyukov/f514418f3affd677e1ac408ec0c09188
Далее собираем через hasher, или:
./autogen.sh --no-po4a
./configure
make all
Проверить можно так:
1) Исходники ядра линукс:
https://fossies.org/linux/kernel/v5.15/linux-5.15.7.tar.xz
time -p src/xz/xz -d < linux-5.15.7.tar.xz > /dev/null
2) Бинарники и ресурсы Firefox (можно заменить на несколько сотен
мегабайт других):
tar -cf firefox.tar /usr/lib/firefox
src/xz/xz -c -7e --format=lzma firefox.tar > firefox.tar.lzma
time -p src/xz/xz -d < firefox.tar.lzma > /dev/null
Частоту процессора перед проверкой надо на максимум ставить. Или
запускать тест несколько раз подряд, результат первого запуска выбросить.
Также более точный замер:
perf stat -r 5 src/xz/xz -c -d firefox.tar.lzma > /dev/null
На сжатом тексте даёт наименьшее ускорение.
Подробная информация о списке рассылки Devel