[devel] rpm: LZMA payload compression

Alexander Bokovoy =?iso-8859-1?q?ab_=CE=C1_altlinux=2Eorg?=
Сб Май 24 20:02:05 MSD 2008


24 мая 2008 г. 19:53 пользователь Alexander Bokovoy <ab на altlinux.org> написал:
> 24 мая 2008 г. 19:35 пользователь Alexey Tourbin <at на altlinux.ru> написал:
>>> Два вопроса по производительности:
>>> 1. Насколько это ускоряет типичную установку пакетов? Скажем, kde или
>>> что-нибудь подобное по объему?
>>
>> Это не может ускорить установку пакетов, потому что скорость разжатия
>> раза в три меньше, чем у gzip, который сейчас используется (но при этом
>> раза в 3-4 больше, чем у bzip2).
>>
>> Точнее, на это лучше смотреть по-другому.  Скорость разжатия LZMA на
>> современных процессорах (2GHz) -- 20 Mb/s.  Это неплохо соотносится
>> со скоростью современных дисков и media.  Например, если *.rpm пакеты
>> с DVD читаются медленнее, чем 20 MB/s (чем процессор успевает их
>> распаковывать), то установка пойдёт несколько быстрее (за счёт того,
>> что при LZMA сжатии *.rpm пакеты занимают меньше места на DVD).
> Было бы интересно увидеть конкретные цифры установок в хэшере.
>
>>
>>> 2. Насколько этот режим совместим с rsync? Сам по себе LZMA не очень
>>> приспособлен к генерации блочных структур.
>>
>> Не знаю.  В текущем виде gzdio тоже создаёт payload, который rsync
>> "не берёт".  К тому же rsync синхронизирует только файлы с одинаковыми
>> названиями (точнее, у rsync есть опция -y, но я не уверен, что она
>> всегда хорошо работает).
> Дело в том, что gzip имеет код, который позволяет создавать архивы,
> построенные на фиксированных блоках (опция --rsyncable в утилите
> gzip), наверняка такую же настройку можно активировать и в библиотеке.
> С этими фиксированными блоками rsync очень хорошо справляется.
Вот, кстати, подробное исследование применимости rsync к репозитариям,
которое было выполнено на основе debian-подобного дистрибутива и alt
linux (Святослав Свиридов как раз тогда эти патчи для нашего apt/rsync
написал) пять лет назад.
http://lists.debian.org/debian-devel/2003/07/msg00462.html

-- 
/ Alexander Bokovoy


Подробная информация о списке рассылки Devel