Что-то начали массово менять средство сжатия для публичных архивов...
lzma на 1-м уровне делает файлы меньше в полтора раза, чем gzip на самом 9-м.
Зато и процессора жрёт при этом в 2 раза больше.
$ for P in gzip bzip2 xz; do for L in 1 3 6 9; do /usr/bin/time sh -c "$P -c$L ~/Mail/uanog-track.2009 >c.$P.$L" 2>&1 | awk '{print $3}'; done; done
0.21
0.24
0.40
0.44
1.90
2.16
2.44
2.66
1.02
3.98
5.89
6.04
$ ls -ld c.* | awk '{print $5 " " $9}'
1874385 c.bzip2.1
1623726 c.bzip2.3
1510405 c.bzip2.6
1451469 c.bzip2.9
2113625 c.gzip.1
2027492 c.gzip.3
1840844 c.gzip.6
1835760 c.gzip.9
1621832 c.xz.1
1317072 c.xz.3
1242684 c.xz.6
1242684 c.xz.9
Исходный файл - 6810957 байт.
lzma на 1-м уровне делает файлы меньше в полтора раза, чем gzip на самом 9-м.
Зато и процессора жрёт при этом в 2 раза больше.
$ for P in gzip bzip2 xz; do for L in 1 3 6 9; do /usr/bin/time sh -c "$P -c$L ~/Mail/uanog-track.2009 >c.$P.$L" 2>&1 | awk '{print $3}'; done; done
0.21
0.24
0.40
0.44
1.90
2.16
2.44
2.66
1.02
3.98
5.89
6.04
$ ls -ld c.* | awk '{print $5 " " $9}'
1874385 c.bzip2.1
1623726 c.bzip2.3
1510405 c.bzip2.6
1451469 c.bzip2.9
2113625 c.gzip.1
2027492 c.gzip.3
1840844 c.gzip.6
1835760 c.gzip.9
1621832 c.xz.1
1317072 c.xz.3
1242684 c.xz.6
1242684 c.xz.9
Исходный файл - 6810957 байт.
no subject
Date: 2010-06-14 07:28 am (UTC)no subject
Date: 2010-06-14 07:52 am (UTC)Зато lzma — несимметричный алгоритм, разжимает намного быстрее bzip2 при существенном выигрыше в размере (и всего вдвое медленнее gzip-а). Для публичных архивов, особенно исходников и других текстов — самое то. Не знаю, как xz, но lzma я считаю достаточно зрелым и распространённым компрессором для регулярного использования.
no subject
Date: 2010-06-14 08:34 am (UTC)no subject
Date: 2010-06-14 10:50 am (UTC)И, таки да, lzma — мой любимый архиватор.
no subject
Date: 2010-06-14 11:40 am (UTC)no subject
Date: 2010-06-14 12:00 pm (UTC)Просто в последнее время стал широко распространён 7zip, вот и cтали жать.
Под виндой давно уже широко используется ms Cab (словарь до 2 Mb), ну и местами rar.
Просто в unix мире довольно сильны позиции ископаемых gzip/bzip, несмотря на то, что они плохи по многим параметрам.
no subject
Date: 2010-06-14 02:40 pm (UTC)no subject
Date: 2010-06-14 02:44 pm (UTC)no subject
Date: 2010-06-14 02:49 pm (UTC)no subject
Date: 2010-06-14 07:36 pm (UTC)no subject
Date: 2010-06-14 07:38 pm (UTC)no subject
Date: 2010-06-14 07:39 pm (UTC)no subject
Date: 2010-06-14 07:46 pm (UTC)no subject
Date: 2010-06-14 07:46 pm (UTC)no subject
Date: 2010-06-17 09:53 am (UTC)no subject
Date: 2010-07-19 02:58 pm (UTC)no subject
Date: 2010-09-07 07:21 pm (UTC)И немного оффтопика по статьям на segfault.kiev.ua:
> E.g. a program determine file type by default using its suffix; if you want to process all files in directory as mp3 files, you can't use `-mode=mp3 *', but instead shall provide "inserting" into forced mode and "exiting" from it: `-force-mode=mp3 * -exit-force-mode'. If program processes wildcard by itself, it can use more simple approach and treat expansion results internally.
> "Время последнего доступа пишется с точностью до дня, последней модификации - с точностью до 2 секунд, а создания - до сотых долей секунды (на NT?)."
Это не какой-то сакральный смысл, а банальная нехватка места в 32-байтовой записи каталога на FAT. Какую раньше вводили, так и получилось. А для старших двух байтов номера начального кластера на FAT32 - так и вовсе пожертвовали полем, принадлежавшим OS/2.
И еще в дизайне протоколов упоминался epic fail RFC 822 - было бы интересно более подробно, где еще проблемы формата RFC 822 (его Раймонд в TAOUP любит, например), и как оно было бы лучше, с учетом нонешних реалий почты.
упс, про glob забыл
Date: 2010-09-07 07:23 pm (UTC)Или я не понял значение опций гипотетической программы
no subject
Date: 2011-02-04 09:36 am (UTC)Тогда очень странно, что заняли последнее место несущественной ерундой.
> И еще в дизайне протоколов упоминался epic fail RFC 822 - было бы интересно более подробно, где еще проблемы формата RFC 822
Их в общем три:
1) escaped CRLF
2) разрешённый NUL
Обе устранены в 2822;
3) возможность вставлять comment'ы куда угодно - это и сейчас проблема и поэтому никем не используется.
Остальное вполне в пределах поддерживаемого сейчас большинством реализаций.
> его Раймонд в TAOUP любит, например
Я думаю, он любит за общий формат типа ключ:значение, а не за тараканы.
Re: упс, про glob забыл
Date: 2011-02-04 09:38 am (UTC)Разумеется, в полной реализации это должен быть даже не -exit-force-mode, а случайная последовательность знаков.
Re: упс, про glob забыл
Date: 2011-02-06 02:37 pm (UTC)