The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]



"Сравнение производительности и степени сжатия gzip, bzip2 и ..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от opennews (??), 27-Мрт-09, 13:48 
"GZIP vs. BZIP2 vs. LZMA (http://odzangba.wordpress.com/2009/03/25/gzip-vs-bzip2-vs-lz... - сравнение производительности и степени сжатия gzip 1.3.12, bzip2 1.0.5, LZMA 4.32.0beta3.


Сжатие пустого файла, размером 1Гб, состоящего из нулей:


-  GZIP: 12.36 сек. CPU 99%, 1018 Кб
-  BZIP2: 32.07 сек. CPU 98%, 785 байт (!)
-  LZMA: 873.79 сек. CPU 96%, 148 Кб

Сжатие архива системных файлов (120 Мб):


-  GZIP: 19.42 сек CPU 89%, 39 Мб
-  BZIP2: 30.76 сек. CPU 93%, 36 Мб
-  LZMA: 132.21 сек. CPU 92%, 25 Мб (!)

Сжатие видеофайла (175 Мб):


-  GZIP: 10.94 сек. CPU 78%, 173 Мб
-  BZIP2: 55.15 сек. CPU 94%, 173 Мб
-  LZMA: 138.74 сек. CPU 93%, 174 Мб


URL: http://odzangba.wordpress.com/2009/03/25/gzip-vs-bzip2-vs-lzma/
Новость: https://www.opennet.ru/opennews/art.shtml?num=20958

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Сравнение производительности и степени сжатия gzip, bzip2 и "  +/
Сообщение от Аноним (-), 27-Мрт-09, 13:48 
Гзип по скорости заруливает всех.
Ответить | Правка | Наверх | Cообщить модератору

2. "Сравнение производительности и степени сжатия gzip, bzip2 и "  +/
Сообщение от аноним (?), 27-Мрт-09, 14:09 
>Гзип по скорости заруливает всех.

На сжатие. Распаковывает lzma по-прежнему быстрее.

Ответить | Правка | Наверх | Cообщить модератору

11. "Сравнение производительности и степени сжатия gzip, bzip2 и "  +/
Сообщение от User294 (ok), 27-Мрт-09, 19:21 
>Гзип по скорости заруливает всех.

Ну и жмет дохлее всех, соответственно.Если смириться с еще более дохлым сжатием, LZO или QuickLZ по скорости порвут гзипа играючи (у них декомпрессия вообще обычно упирается в скорость работы дисков, но зато и сжатие еще хилее :P).

А тест довольно тупой.Например, нули давить - не показательно, синтетика в хучшем виде.А в среднем по больнице - bzip2 имхо можно закапывать: жмет заурядно и медленно.Декомпрессится тоже медленно.LZMA хоть и тормозно жмет но зато - жмет сильно и декомпрессится быстро.Более того - на реальных наборах данных LZMA почти всегда уделывает bzip2 по степени сжатия.Зачастую достаточно заметно.

Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

3. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от goshanecremail (??), 27-Мрт-09, 14:15 
А может кто нибудь сказать почему пустой файл сжимается аж в 148 килобайт? Там образно говоря разве нельзя записать что последовательность из миллиарда элементов и единичный элемент байт 0? Ну сотня байт.. но не сто же килобайт то..
Ответить | Правка | Наверх | Cообщить модератору

4. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от Sem (??), 27-Мрт-09, 14:56 
bzip2 примерно так и сделал.
Ответить | Правка | Наверх | Cообщить модератору

5. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от Ыку (?), 27-Мрт-09, 14:57 
>А может кто нибудь сказать почему пустой файл сжимается аж в 148
>килобайт? Там образно говоря разве нельзя записать что последовательность из миллиарда
>элементов и единичный элемент байт 0? Ну сотня байт.. но не
>сто же килобайт то..

Все зависит от размера словаря. Чем он больше тем больше повторений можно поймать и тем меньше будет количество служебной информации.

Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

19. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от User294 (ok), 28-Мрт-09, 15:22 
> Ну сотня байт.. но не сто же килобайт то..

В таком предельном случае всех зарулит обычное примитивное RLE-кодирование, суть которого сводится к тому что сохраняется счетчик повторов и то чего повторять.Так можно пару миллиардов нулей тиснуть в десяток байтов, если поюзать оптимизированный вариант RLE с счетчиком должной разрядности (его должно хватить на сохранение числа "пара миллиардов").Проблемы будут тогда когда на вход подадут не нули а реальные данные - там конечно блоки заполненые одинаковыми байтами бывают но - достаточно немного, так что эффективность RLE на более полезных реалистичных данных - отвратная :)

А алгоритмы типа LZMA более заточены на реалистичное использование на типичных реальных данных.Никто не ставит там себе задачу всех уделать на последовательности из миллиарда нулей.Ну вот оно себя и показывает на реальных данных, даже этот странный и стремный писькомер это выловил.

Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

6. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от Andrew Kolchoogin (?), 27-Мрт-09, 15:02 
Плохой, негодный тест. У 7z, использующего алгоритм LZMA для сжатия, заметно побольше ключей для достижения максимальной компрессии. У меня есть ощущение, что размер словаря не раскачали до максимума.
Ответить | Правка | Наверх | Cообщить модератору

20. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от User294 (ok), 28-Мрт-09, 15:34 
>словаря не раскачали до максимума.

Зависит от хардвара ;).А вдруг у них оперативки было мало?А еще они поюзали дреееееееееевний вариант LZMA - 4.4х версий.При текущей версии LZMA SDK всего-то 4.65 ... oO

Ответить | Правка | Наверх | Cообщить модератору

7. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от Konwinemail (??), 27-Мрт-09, 15:10 
Что любопытно - сколько раз сам что-то жал - не получалось у меня чтоб в 7Zip с LZMA было медленнее чем в нём же с BZip2...
Ответить | Правка | Наверх | Cообщить модератору

9. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от Angel IL (?), 27-Мрт-09, 16:20 
Аттож, и у меня не получалось бзипом сжать быстрее чем жмет 7зип... что то, кто то, где то врет...
Ответить | Правка | Наверх | Cообщить модератору

22. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от User294 (ok), 28-Мрт-09, 23:07 
Подсказать как тормознуть 7zip или сами догадаетесь? :)
Хинт: в 7zip можно указывать длину совпадений которая "устраивает" искалку совпадений, так что он будет до упора искать длииииинные совпадения.Это тормознет сжатие и улучшит его (если в входных данных есть совпадения длиннее чем заданная величина).Кстати в клинических случаях типа "миллиард нулей" задирание этой величины может заметно улучшить степень сжатия.На практически ценных данных выигрыш от выкручивания этого параметра обычно не особо большой а вот тормозов он добавляет конкретно.

Хинт2: в графическом виндовом варианте можно покрутить fast, ... normal, ... ultra и посмотреть чем отличаются их параметры :).Отличие там не только в словаре...

Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

8. "Сравнение производительности и степени сжатия gzip, bzip2 и "  +/
Сообщение от Ivan (??), 27-Мрт-09, 16:18 
> Сжатие видеофайла (175 Мб) ...

Надо было несжатый AVI-файл сжимать, тогда результат нёс бы хоть какую-то информацию.

Ответить | Правка | Наверх | Cообщить модератору

10. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от Serega (??), 27-Мрт-09, 19:16 
а системные файлы == текстовые конфиги?
Ответить | Правка | Наверх | Cообщить модератору

12. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от pavlinux (ok), 27-Мрт-09, 19:34 
Сдаётся мне,  что у него диск тормозил!

Ответить | Правка | Наверх | Cообщить модератору

13. "Сравнение производительности и степени сжатия gzip, bzip2 и "  +/
Сообщение от frol (??), 27-Мрт-09, 19:40 
По-моему бессмысленный бенчмарк.

Насколько я понимаю, алгоритм LZMA силен не скоростью сжатия, а скоростью распаковки. Где соответствующий бенчмарк?

Могу также предположить, что compress обгонит gzip по скорости на всех проведенных  тестах.

Ответить | Правка | Наверх | Cообщить модератору

23. "Сравнение производительности и степени сжатия gzip, bzip2 и "  +/
Сообщение от User294 (ok), 28-Мрт-09, 23:08 
>Могу также предположить, что compress обгонит gzip по скорости на всех проведенных
> тестах.

А уж lzop использующий LZO и вовсе всех порвет.Правда вот он и жмет хуже чем gzip - чудес не бывает...

Ответить | Правка | Наверх | Cообщить модератору

14. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от pavlinux (ok), 27-Мрт-09, 20:37 
$  time -f "%U seconds CPU %P" gzip -c9 BIGNULL > BIGNULL.gz

112.66 seconds CPU 95%

$ time -f "%U seconds CPU %P" bzip2 -c9 BIGNULL > BIGNULL.bz2

271.56 seconds CPU 96%

$ time -f "%U seconds CPU %P" mksquashfs ./BIGNULL  BIGNULL.sqsh -no-recovery -no-exports -no-progress -no-sparse -processors 4 -all-root -nopad

166.24 seconds CPU 161%

$ time -f "%U seconds CPU %P" lzma --threads=4 -c9 BIGNULL > BIGNULL.lzma

1416.45 seconds CPU 97%

$ time -f "%U seconds CPU %P" rar a -m5 -s BIGNULL.rar BIGNULL

762.87 seconds CPU 98%


~> ls -la BIGNULL*

-rw------- 1 pavel users 8589918208 Мар 27 19:31 BIGNULL
-rwx------ 1 pavel users    9766216 Мар 27 20:13 BIGNULL.sqsh
-rw------- 1 pavel users    8336307 Мар 27 19:43 BIGNULL.gz
-rw------- 1 pavel users     581249 Мар 27 20:32 BIGNULL.rar
-rw------- 1 pavel users     280375 Мар 27 20:11 BIGNULL.lzma
-rw------- 1 pavel users       6034 Мар 27 19:51 BIGNULL.bz2

Ответить | Правка | Наверх | Cообщить модератору

21. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от Анонимус (?), 28-Мрт-09, 16:19 
ЦПУ 161% - это как? Многопоточность???
Ответить | Правка | Наверх | Cообщить модератору

15. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от Аноним (-), 27-Мрт-09, 21:27 
Выходит, самым оптимальным видится BZIP2. LZMA еще не дорос по параметрам "цена/качество"
Ответить | Правка | Наверх | Cообщить модератору

16. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от tamerlan311email (?), 27-Мрт-09, 22:44 
>Выходит, самым оптимальным видится BZIP2. LZMA еще не дорос по параметрам "цена/качество"
>

Дорос, тут тестировали LZMA видимо с максимальным сжатием, на с жатии с коэффициентом 2 LZMA как правило делает bzip2 и по скорости и по коэффициенту.

http://tukaani.org/lzma/benchmarks

Вот более адекватный тест.

Ответить | Правка | Наверх | Cообщить модератору

17. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от yantux (??), 27-Мрт-09, 23:23 
А 7z?

Не давно стал пробовать - мне нравиться больше, чем bzip2. Потому что быстрее, а степень сжатия отличается не супер сильно.

Ответить | Правка | Наверх | Cообщить модератору

18. "Сравнение производительности и степени сжатия gzip, bzip2 и ..."  +/
Сообщение от викиочевидность (?), 28-Мрт-09, 00:23 
lzma
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру