[devel] rpm: LZMA payload compression

Alexey Tourbin =?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Сб Май 24 23:16:44 MSD 2008


On Sat, May 24, 2008 at 09:55:23PM +0400, Alexander Bokovoy wrote:
> 24 мая 2008 г. 20:37 пользователь Alexey Tourbin <at на altlinux.ru> написал:
> >> Было бы интересно увидеть конкретные цифры установок в хэшере.
> >
> > Цифры чисто по скорости сжатия/разжатия есть здесь:
> > http://tukaani.org/lzma/benchmarks
> >
> > В хешере что-либо измерить трудно.  Во-первых, hasher создаёт
> > cache/chroot/chroot.cpio, то есть скорость можно измерять только
> > для дополнительных пактов из BuildRequires (а для базовой системы
> > при последовательных сборках скорость оказывается "бесплатной").
> > Во-вторых, собственно, сложно удержать то, что мы хотим измерить.
> > На tmpfs мы измеряем одно, на ext3 мы измеряем другое; в обоих случаях
> > буферный кеш и kswapd спутывают все карты.
> Это так. В таком случае может вообще не стоит рассматривать LZMA?

Улучшение в сжатии очень значительное, зачастую в полотора раза (даже
при параметре 2, который по скорости значительно быстрее bzip2).

$ pwd
/home/at/git.alt/perl-DateTime-TimeZone

$ gear --rpm -- rpm -bs --define '_source_payload w9.gzdio'
Wrote: /home/at/RPM/SRPMS/perl-DateTime-TimeZone-0.72-alt1.src.rpm
$ du -bk /home/at/RPM/SRPMS/perl-DateTime-TimeZone-0.72-alt1.src.rpm
328     /home/at/RPM/SRPMS/perl-DateTime-TimeZone-0.72-alt1.src.rpm

$ gear --rpm -- rpm -bs --define '_source_payload w9.bzdio'
$ du -bk /home/at/RPM/SRPMS/perl-DateTime-TimeZone-0.72-alt1.src.rpm
250     /home/at/RPM/SRPMS/perl-DateTime-TimeZone-0.72-alt1.src.rpm

$ gear --rpm -- rpm -bs --define '_source_payload w2.lzdio'         
Wrote: /home/at/RPM/SRPMS/perl-DateTime-TimeZone-0.72-alt1.src.rpm
$ du -bk /home/at/RPM/SRPMS/perl-DateTime-TimeZone-0.72-alt1.src.rpm
202     /home/at/RPM/SRPMS/perl-DateTime-TimeZone-0.72-alt1.src.rpm

$ gear --rpm -- rpm -bs --define '_source_payload w9.lzdio'         
Wrote: /home/at/RPM/SRPMS/perl-DateTime-TimeZone-0.72-alt1.src.rpm
$ du -bk /home/at/RPM/SRPMS/perl-DateTime-TimeZone-0.72-alt1.src.rpm
162     /home/at/RPM/SRPMS/perl-DateTime-TimeZone-0.72-alt1.src.rpm

Huh?  Имеем 202K c lzdio против 328K с gzdio.  Если бы игра не стоила
свеч, я бы за это не взялся.  Кроме того, есть потенциал получить 162K,
но врубать по умолчанию это негуманно, потому что человеку долго времени
ждать.  Но на входе в incoming'е для "чистовой сборки" можно будет
передавать и "негуманный" параметр (на скорость разжатия он не влияет).
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 197 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20080524/0f25bd73/attachment-0002.bin>


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