The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Компания Google представила совместимый с zlib алгоритм сжат..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от opennews (??) on 01-Мрт-13, 16:20 
Компания Google открыла (http://google-opensource.blogspot.ru/2013/02/compress-data-m...)  реализацию нового алгоритма сжатия данных Zopfli (http://code.google.com/p/zopfli/). Представленная реализация системы сжатия совместима с библиотекой zlib (http://en.wikipedia.org/wiki/Zlib), предоставляющей поддержку контейнеров gzip и deflate, и может выступать в качестве прозрачной замены zlib. Код написан на языке Си и распространяется под лицензией Apache 2.0. Представлен только код для обеспечение сжатия, распаковка может выполняться уже существующими реализациями zlib. Zopfli также совместим на уровне битового потока с методами gzip, Zip, PNG и системами сжатия запросов HTTP.


Алгоритм (http://zopfli.googlecode.com/files/Data_compression_using_Zo...) Zopfli примечателен более высокой степенью сжатия и позволяет сжимать данные в среднем на 3-8% эффективнее zlib, при этом распаковка может выполняться любыми приложениями, поддерживающими Deflate. Используемый в Zopfli метод достаточно ресурсоёмок и базируется на итерационном моделировании энтропии с использованием алгоритма поиска кратчайшего пути в графе для выбора наиболее оптимального представления сжатой последовательности из общего набора вариантов.

Обратной стороной повышения коэффициента сжатия без потери совместимости является значительное повышение трудоёмкости работы алгоритма, который сжимает примерно в 100 раз медленнее zlib. Скорость распаковки архивов, созданных с использованием алгоритма Zopfli идентична другим реализациям zlib.


В качестве области использования Zopfli называются ситуации, требующие однократного сжатия данных с последующей  многократной отдачей результата по сети, например, при распространении сжатого статического контента в Web. Более высокая степень сжатия позволяет уменьшить требуемое для хранения дисковое пространство, ускорить передачу данных и уменьшить задержки при загрузке web-страниц. Особенно эффект от уменьшения размера передаваемых данных может быть заметен в мобильных сетях, выражаясь в том числе в экономии потребления энергии и сокращении оплаты за принятый трафик.

URL: http://google-opensource.blogspot.ru/2013/02/compress-data-m...
Новость: https://www.opennet.ru/opennews/art.shtml?num=36267

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

Оглавление

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


1. "Компания Google представила совместимый с zlib алгоритм сжат..."  +15 +/
Сообщение от Аноним email(??) on 01-Мрт-13, 16:20 
Я zlib использую исключительно там где нужна скорость, где на скорость плевать - LZMA, какой смысл делать из первого второе?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Компания Google представила совместимый с zlib алгоритм сжат..."  +6 +/
Сообщение от хрюкотающий зелюк on 01-Мрт-13, 16:23 
вот там и написали что "В качестве области использования Zopfli называются ситуации, требующие однократного сжатия данных с последующей многократной отдачей результата по сети"

с полным сохранением совместимости

а у себя ты можешь использоваться хоть пятикратное мажоритарное кодирование, кто запрещает

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

27. "Компания Google представила совместимый с zlib алгоритм сжат..."  +9 +/
Сообщение от Аноним (??) on 01-Мрт-13, 20:34 
> с полным сохранением совместимости

Улучшенный алгоритм сжатия, совместимый по формату потока с deflate уже давным давно давно реализован Игорем Павломым в его 7zip.

И из него внедрен в утилиты типа advancecomp и подобные по смыслу. Да, оно больше тормозит при сжатии, но жмет более качественно при сохранении совместимости формата потока с zip/gzip/deflate. Называются цифры порядка 5-10%, т.е. как раз на уровне сабжа.

А велосипедистов из гугеля поздравляем с разморозкой. Вот что бывает если вариться в своем гугловом анклаве игнорируя окружающий мир - при этом делается работа которая уже несколько лет назад как выполнена другими людьми.

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

45. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 22:07 
Хм... после читания PDFника с результатами тестов - гугловская зоофилия таки получше по результатам теста. Тест конечно от гугли, но все-таки на более-менее общепринятом корпусе, так что я может и погорячился насчет велосипедизмов.
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

83. "Компания Google представила совместимый с zlib алгоритм сжат..."  +3 +/
Сообщение от Аноним (??) on 02-Мрт-13, 20:55 
7zip — под лицензией LGPL, тогда как представленная библиотека — с лицензией Apache 2.0
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

4. "Компания Google представила совместимый с zlib алгоритм сжат..."  –2 +/
Сообщение от Vaso Petrovich on 01-Мрт-13, 16:44 
Основное применение это веб, там вы со своим LZMA, будет как летом на базаре в лыжи обутый.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

7. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от inferrna (ok) on 01-Мрт-13, 16:59 
Действительно, ведь текстовые данные лучше жмёт ppmd.
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

22. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от z (??) on 01-Мрт-13, 19:47 
> Действительно, ведь текстовые данные лучше жмёт ppmd.

Это тот, у которого требования к распаковке почти идентичны требованиям при упаковке? Ну-ну =)

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

28. "Компания Google представила совместимый с zlib алгоритм сжат..."  +3 +/
Сообщение от Аноним (??) on 01-Мрт-13, 20:35 
> Действительно, ведь текстовые данные лучше жмёт ppmd.

Только вот и сервера и клиенты раком встанут если им начать пользоваться. Особенно круто будет когда вам и вашей ср@ной кош^W нетбуку сервак с 64 гигз памяти лихо скомпрессует документик для расжатия которого надо 50Гб оперативки. И будете вы неделю свопом тарахтеть...

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

85. "Компания Google представила совместимый с zlib алгоритм сжат..."  –1 +/
Сообщение от Марк Шатлворт on 02-Мрт-13, 23:22 
ppmd требует мало памяти для распаковки и работает в разы быстрее zlib для текстовых данных
Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

75. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от koloboid (ok) on 02-Мрт-13, 11:20 
на фоне

>сжимает примерно в 100 раз медленнее zlib

лыжи очень неплохо смотрятся.

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

5. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 16:50 
И какой браузер умеет в Accept-Encoding: lzma?
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

33. "Компания Google представила совместимый с zlib алгоритм сжат..."  +2 +/
Сообщение от Алексей (??) on 01-Мрт-13, 20:44 
relevant: https://bugzilla.mozilla.org/show_bug.cgi?id=366559
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

101. "Компания Google представила совместимый с zlib алгоритм сжат..."  –1 +/
Сообщение от aborland (ok) on 05-Мрт-13, 22:54 
А какой  сервер умеет такой энкодинг отдавать?
Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

3. "Компания Google представила совместимый с zlib алгоритм сжат..."  +1 +/
Сообщение от Аноним (??) on 01-Мрт-13, 16:23 
pngcrush немного улучшится теперь?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

6. "Компания Google представила совместимый с zlib алгоритм сжат..."  +2 +/
Сообщение от Stax (ok) on 01-Мрт-13, 16:56 
Уже - называется optipng :)
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

15. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 19:02 
И где там новый алгоритм, а?
http://optipng.hg.sourceforge.net/hgweb/optipng/optipng/shor...
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

30. "Компания Google представила совместимый с zlib алгоритм сжат..."  +2 +/
Сообщение от Аноним (??) on 01-Мрт-13, 20:36 
> И где там новый алгоритм, а?

Он в утилитке advancecomp, только это заслуга Игоря Павлова и его 7zip, откуда и был взят данный алгоритм. А гугл походу гуглить не умеет, раз переизобретает велик еще раз.


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

41. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Lockal (ok) on 01-Мрт-13, 21:26 
Чукча не читатель? В статье есть ссылка на PDF, в котором сравниваются разные реализации zlib-совместимых алгоритмов, в том числе и 7zip. И ZopFli действительно даёт лучшие результаты.
Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору

43. "Компания Google представила совместимый с zlib алгоритм сжат..."  +1 +/
Сообщение от Аноним (??) on 01-Мрт-13, 22:02 
> действительно даёт лучшие результаты.

Хм, действительно, он дополнительно отыгрывает пару крох на конкретно этом примере. Но там всего несколько файлов. Маловато данных для глобальных выводов, хотя в целом выглядит оптимистично.

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

57. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Stax (ok) on 01-Мрт-13, 22:53 
Ох. Вы ничего не поняли - аноним пожелал "немного лучше сжимающий pngcrush", я сказал, что его уже изобрели, безо всяких гуглов :)
Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

65. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 23:51 
ОК, optipng выиграл у pngcrush (оба на максимуме настроек) 56 байт на 400К PNG файле. По сути, обе утилитки перебирают параметры PNG компрессии и потом жмут zlib с уровнем 9. Но это не то. Я спрашивал про засовывание нового алгоритма, который выдаст (условно) уровень 10 сжатия zlib.
Ответить | Правка | ^ к родителю #57 | Наверх | Cообщить модератору

69. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 02-Мрт-13, 01:42 
> ОК, optipng выиграл у pngcrush (оба на максимуме настроек) 56 байт на
> 400К PNG файле. По сути, обе утилитки перебирают параметры PNG компрессии

Можно попытаться до и/или после этого еще и advancecomp поиграться. Хотя идеальным был бы optipng скрещенный с advancecomp. Правда работал бы он просто неимоверно долго.

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

77. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 02-Мрт-13, 11:51 
Увы, но опять мимо. advpng -z4 из пакета advancecomp жмёт один-в-один как optipng -o7, и работают оба по одному принципу - "скрещивание" бесполезно. Правда, advpng умеет менять размер словаря zlib, и, о чудо, *уменьшение* словаря с 32К (по дефолту) до 1К позволяет выиграть ещё 843 байта.
Короче, нужен z10 для zlib.
Ответить | Правка | ^ к родителю #69 | Наверх | Cообщить модератору

78. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 02-Мрт-13, 11:57 
Блин, напутал. Это optipng позволяет менять размер словаря, а advpng - ниачём...
PS. все тесты под убунтой 12.04 и соотв. версии пакетов дефолтные для этого LTS.
Ответить | Правка | ^ к родителю #77 | Наверх | Cообщить модератору

90. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 03-Мрт-13, 02:50 
> Увы, но опять мимо. advpng -z4 из пакета advancecomp жмёт один-в-один как
> optipng -o7, и работают оба по одному принципу - "скрещивание" бесполезно.

Вообще-то основное отличие advpng - там юзается не стандартная реализация deflate из zlib и прочая, а более хорошо жмущая от Игоря Павлова. Тем не менее, advancecomp не умеет играться с префильтрами. Это чисто рекомпрессор и не более. Тогда как optipng умеет брутфорсить префильтры + параметры deflate.

> Правда, advpng умеет менять размер словаря zlib, и, о чудо, *уменьшение*
> словаря с 32К (по дефолту) до 1К позволяет выиграть ещё 843 байта.

А вот это весьма и весьма зависит от конкретной картинки, между прочим. Там нет серебряных пуль. Вы только представьте себе, для разных картинок наилучшим образом подходят различные варианты параметров, по поводу чего там и реализован брутфорс. В идеале бы хорошо если бы брутфорсером проверять еще и не сожмет ли "улучшенный deflate" опосля игрища с префильтром потуже чем стандартный (что не гарантированно, но вполне возможно). Но это будет аццки долго и такого вроде никто не делал пока.

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

72. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Crazy Alex (ok) on 02-Мрт-13, 03:20 
лучше на imagezero гляньте - вот что надо до ума доводить...
Ответить | Правка | ^ к родителю #65 | Наверх | Cообщить модератору

91. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 03-Мрт-13, 02:56 
> лучше на imagezero гляньте - вот что надо до ума доводить...

А это вообще что? И чем знаменито? А то вы так говорите как будто это все знают лучше чем гифы с пнг.

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

95. "Компания Google представила совместимый с zlib алгоритм сжат..."  +1 +/
Сообщение от Sokoloff on 03-Мрт-13, 14:45 
>> лучше на imagezero гляньте - вот что надо до ума доводить...
> А это вообще что?

https://www.opennet.ru/opennews/art.shtml?num=32940

> И чем знаменито? А то вы так говорите
> как будто это все знают лучше чем гифы с пнг.

Пока ничем не знаменито, к сожалению. А хотелось бы иметь иконки в нем. Т.к. чтение большого количества иконок (около сотни) в PNG, ощутимо подтормаживает.

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

8. "Компания Google представила совместимый с zlib алгоритм сжат..."  –9 +/
Сообщение от SergMarkov email(ok) on 01-Мрт-13, 17:19 
3-8% эффективнее zlib. сжимает примерно в 100 раз медленнее zlib

Откуда растут руки ? :-)

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

10. "Компания Google представила совместимый с zlib алгоритм сжат..."  +8 +/
Сообщение от slon (??) on 01-Мрт-13, 17:51 
а голова, откуда?
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

31. "Компания Google представила совместимый с zlib алгоритм сжат..."  +1 +/
Сообщение от Аноним (??) on 01-Мрт-13, 20:41 
> Откуда растут руки ? :-)

Тут скорее вопросы к голове, ибо вы явно не в курсе как работает LZ-based и почему небольшое улучшение требует заметного падения скорости.

Hint: для повышения сжатия LZ обычно идут на некий компромисс, делая не совсем идеальный поиск совпадений, а забивая на дальнейший поиск совпадений по неким критериям ради ускорения процесса. Грубо говоря, обычно компрессор находит "достаточно хорошее" совпадение и забивает болт на дальнейший поиск. Хотя при продолжении поиска могло бы оказаться что результат можно улучшить. Ценой большей тормознутости.

Что-то такое и позволяет улучшить результат сжатия в некоторых случаях, поскрипев процессором несколько больше чем обычно. В основном это катит на сильно избыточных данных, где поиск более длинных совпадений себя оправдает. На некоторых типах данных это вообще не дает эффекта за отсутствием больших групп совпадений - это служит еще одним стимулом для того чтобы "майнлайновая" реализация не пыталась вкалывать "до победного".

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

66. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от SergMarkov email(ok) on 02-Мрт-13, 00:45 
>> Откуда растут руки ? :-)
> Тут скорее вопросы к голове, ибо вы явно не в курсе как
> работает LZ-based и почему небольшое улучшение требует заметного падения скорости.

Каюсь :-), этого просто не знал. Thanks

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

89. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 03-Мрт-13, 02:43 
> Каюсь :-), этого просто не знал. Thanks

Собственно, левелы сжатия в deflate (оно же ключи gzip -1...-9) в основном указывают LZшному компрессору gzip насколько рано или поздно он должен забить на поиск совпадений.

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

73. "Компания Google представила совместимый с zlib алгоритм сжат..."  –1 +/
Сообщение от анон on 02-Мрт-13, 05:17 
сперва добейся
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

9. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 17:46 
Есть набор данных, в которых значений немного, но повторяемости почти никакой.
Может кто подскажет быструю библиотечку, которая делает просто huffman, безо всякого lz.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

12. "Компания Google представила совместимый с zlib алгоритм сжат..."  +1 +/
Сообщение от pkunk (ok) on 01-Мрт-13, 18:43 
bz2 ?
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

25. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 20:04 
Медленно :(

Хотя идея там любопытная, прочитал с интересом

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

35. "Компания Google представила совместимый с zlib алгоритм сжат..."  +2 +/
Сообщение от Аноним (??) on 01-Мрт-13, 21:02 
> Есть набор данных, в которых значений немного, но повторяемости почти никакой.

Авторы архиваторов зачастую читерят на таких данных, используя префильтр -> LZ :).
Например: 1,2,3,4,5 (нет повторяемости) -> 1,1,1,1,1(дельта) -> [1,5] (LZ сжал).

А если надо именно хафмана...
1) у zlib есть стратегия с говорящим названием Z_HUFFMAN_ONLY :)
2) Можно на любом подходящем сайте поискать по слову huffman. Например, http://sourceforge.net/projects/huffman/ - неожиданно, правда? :)

А так - лучше поспрашивать на специализированных ресурсах типа compression.ru. Там более предметно посоветуют, с учетом природы данных и все такое.

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

11. "Компания Google представила совместимый с zlib алгоритм сжат..."  +4 +/
Сообщение от XoRe (ok) on 01-Мрт-13, 18:40 
> в среднем на 3-8% эффективнее zlib
> который сжимает примерно в 100 раз медленнее zlib.

Мило)
Зато можно сделать другой вывод: zlib настолько близка к совершенству, если без извратов лучше уже не сделаешь :)

> Особенно эффект от уменьшения размера передаваемых
> данных может быть заметен в мобильных сетях, выражаясь в том числе
> в экономии потребления энергии и сокращении оплаты за принятый трафик.

Если уж настолько заботятся о мобильных пользователях, то стоит подумать дальше.
webkit наиболее распространен в мобильных устройствах.
Взяли бы, да запилили поддержку xz (lzma) в webkit, весь мир бы почувствовал пользу.
xz очень хорошо сжимает и очень быстро разжимает.
По этим параметрам он обходит gzip и bzip.

Понятно, что для эффекта потребовалось бы время, пока обновятся устройства, подтянутся другие браузеры и придет поддержка со стороны серверной части.
Но от xz эффект куда больше, чем 3-8%.

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

13. "Компания Google представила совместимый с zlib алгоритм сжат..."  –1 +/
Сообщение от Stax (ok) on 01-Мрт-13, 18:51 
> xz очень хорошо сжимает и очень быстро разжимает.

На встройке типа смартфонов будет плохо: xz, увы, требует некисло памяти для разжатия. Особенно для "хорошо сжатых" вещей.

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

17. "Компания Google представила совместимый с zlib алгоритм сжат..."  –1 +/
Сообщение от Аноним (??) on 01-Мрт-13, 19:26 
Нед. LZMA памяти надо немного, но CPU - много, относительно распаковки {g}zip
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

19. "Компания Google представила совместимый с zlib алгоритм сжат..."  –2 +/
Сообщение от ip1981 (ok) on 01-Мрт-13, 19:30 
>> xz очень хорошо сжимает и очень быстро разжимает.
> На встройке типа смартфонов будет плохо: xz, увы, требует некисло памяти для
> разжатия. Особенно для "хорошо сжатых" вещей.

"Некисло" памяти для распаковки надо если вы понапихали кучу сжатых данных ;-)

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

88. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 03-Мрт-13, 02:38 
> "Некисло" памяти для распаковки надо если вы понапихали кучу сжатых данных ;-)

Не обязательно эти данные целиком в памяти держать. Чисто технически достаточно объема словаря. Буфера входа/выхода можно и по ходу пьесы наполнять и скидывать.


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

36. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 21:07 
> На встройке типа смартфонов будет плохо: xz, увы, требует некисло памяти для разжатия.

По размеру словаря, не более.  При том что для сжатия с тем же словарем надо многократно больше памяти. По поводу чего даже смартфон сможет нормально декомпресануть в общем случае. У LZ-based требования к сжатию и распаковке сильно несиммметричны в общем случае и распаковка обычно намного проще. Бывают даже варианты LZ где для распаковки вообще дополнительная память не требуется (LZO, UCL, ...).

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

20. "Компания Google представила совместимый с zlib алгоритм сжат..."  +1 +/
Сообщение от z (??) on 01-Мрт-13, 19:43 
>Зато можно сделать другой вывод: zlib настолько близка к совершенству, если без извратов лучше уже не сделаешь :)

Если мопеду достаточно 1л.с. для разгона до 100км/ч, а McLarenF1 620л.с. до 380км/ч - это не значит, что мопед совершенен, просто на таких (200+км/ч) скоростях начинают действовать другие факторы

>xz очень хорошо сжимает и очень быстро разжимает.
>По этим параметрам он обходит gzip и bzip.

LZMA где-то в 2 раза медленнее Deflate на распаковке, выводы делаем сами

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

32. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от all_glory_to_the_hypnotoad (ok) on 01-Мрт-13, 20:42 
это всё ерунда, ибо в вебе редко бывают очень большие запросы. На типичных размерах http пакетов xz сильно не поможет

хочешь помочь мобилбьным пользователям - просто прекрати штамповать дерьмо, которое выжирает батарею за десять минут пользования. Тут я намекаю на напичканные JSом веб приложения и на клепателей "супер быстрых" JS движков, которые только дают гогнокодерам очередной повод засунуть ещё больше JSа в веб.

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

34. "Компания Google представила совместимый с zlib алгоритм сжат..."  –1 +/
Сообщение от Michael Shigorin email(ok) on 01-Мрт-13, 20:48 
> http пакетов

Запросов/ответов, наверное?

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

49. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 22:26 
И на 3G, который отжирает батарею на трафике chrome
Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

97. "Компания Google представила совместимый с zlib алгоритм сжат..."  –2 +/
Сообщение от Аноним (??) on 03-Мрт-13, 21:22 
> И на 3G, который отжирает батарею на трафике chrome

Opera Mini, не?

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

74. "Компания Google представила совместимый с zlib алгоритм сжат..."  –1 +/
Сообщение от XoRe (ok) on 02-Мрт-13, 11:19 
> это всё ерунда, ибо в вебе редко бывают очень большие запросы. На
> типичных размерах http пакетов xz сильно не поможет

Наверное, вы про запросы)
А это всегда можно проверить на любом посещаемом сайта.
Одну недельку посидеть без deflate сжатия.
И одну недельку посидеть с deflate сжатием.
И посмотреть счетчики (исходящий трафик, среднее время загрузки страниц в какой-нибудь метрике и т.д.).
А потом, зная, насколько xz лучше deflate, прикинуть профит от xz.

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

56. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Led (ok) on 01-Мрт-13, 22:47 
>xz очень хорошо сжимает и очень быстро разжимает.
>По этим параметрам он обходит gzip и bzip.

По скорости декомпрессии нифига он не обходит gzip. Bzip2 - обходит, раз в 5.

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

70. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 02-Мрт-13, 01:45 
> По скорости декомпрессии нифига он не обходит gzip.

Не обходит, стадия дожатия у 7zip более тормозная чем хаффман. Но и жмет лучше. И таки при декомпрессии он развивает очень приличную скорость (как и все LZ-based).

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

16. "Компания Google представила совместимый с zlib алгоритм сжат..."  –1 +/
Сообщение от Алексей (??) on 01-Мрт-13, 19:19 
Лучше бы наоборот: сжимал на 3-8% хуже, но в 100 раз быстрее.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

18. "Компания Google представила совместимый с zlib алгоритм сжат..."  +2 +/
Сообщение от ip1981 (ok) on 01-Мрт-13, 19:28 
lzo?
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

21. "Компания Google представила совместимый с zlib алгоритм сжат..."  –1 +/
Сообщение от z (??) on 01-Мрт-13, 19:45 
> lzo?

Лучше: RLE, "и пусть весь мир отдохнёт" =)


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

26. "Компания Google представила совместимый с zlib алгоритм сжат..."  +1 +/
Сообщение от Аноним (??) on 01-Мрт-13, 20:06 
>> lzo?
> Лучше: RLE, "и пусть весь мир отдохнёт" =)

Тогда уж лучше совсем не сжимать :)

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

44. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 22:03 
> Лучше: RLE,

Ничем не лучше: частный случай LZ по сути. Не в пример менее эффективный на реальных данных.

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

79. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от z (??) on 02-Мрт-13, 12:32 
>Ничем не лучше: частный случай LZ по сути.

Во-первых, LZ это лишь аббревиатура от фамилий двух исследователей, алгоритм конкретно в Deflate называется LZ77 (по году публикации работы), самих вариаций на основе их работ - море

Во-вторых, RLE был задолго до LZ77, т.е. не является частным случаем последнего хотя бы потому, что он _НИГДЕ_ не оперирует счётчиками повторений

Вообщем, учи матчасть

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

87. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 03-Мрт-13, 02:34 
> Во-первых, LZ это лишь аббревиатура от фамилий двух исследователей,

Капитан, вы сегодня встали с левой ноги?

> Во-вторых, RLE был задолго до LZ77, т.е. не является частным случаем последнего

Вы знаете, ньютоновская механика была задолго до теории относительности. Это совершенно не мешает ей являться упрощенным частным случаем того что описывается теорией относительности. Ну вот и тут аналогично: RLE это совсем тупой вариант поиска совпадений в одной частной ситуации, а LZ - более генерализованный вариант, менее тупoрылый в допущениях. А вообще странно что мне еще какой-нибудь LZ78 или LZW не припомнили, там можно и посильнее до...ся было :)

>  он _НИГДЕ_ не оперирует счётчиками повторений

Да, он вместо этого оперирует длиной совпадения. Один фиг по смыслу, только более генерально - не 1 символ копируется в вывод эн раз, а совпадение длиной эн копируется на выход. Что несколько более умный и универсальный подход, куда более эффективный на типовых данных. По сути - дальнейшее логическое развитие идеи.

> Вообщем, учи матчасть

Да я в общем то уже давно это сделал. Более того, я даже собственные RLE и LZ декомпрессоры писал, for fun и не только. Так что вы с вашим апломбом немного опоздали.

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

96. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от z (??) on 03-Мрт-13, 19:02 
>RLE это совсем тупой вариант поиска совпадений в

RLE это не вариант поиска совпадений, а способ _кодирования_ (что как бы следует из его названия), методов поиска совпадений - тонны

>RLE это совсем тупой вариант поиска совпадений в одной частной ситуации, а LZ - более генерализованный вариант

Да ну? И в каком виде в LZ77, к примеру, используется счётчик повторений (основа RLE)?

>Да, он вместо этого оперирует длиной совпадения. Один фиг по смыслу, только более генерально - не 1 символ копируется в вывод эн раз, а совпадение длиной эн копируется на выход. Что несколько более умный и универсальный подход, куда более эффективный на типовых данных. По сути - дальнейшее логическое развитие идеи.

Бла-бла-бла-демагогия, универсальный - значит подходящий для всего, а в LZ77, в который раз напомню, счётчики повторений не используются _НИГДЕ_

>Да я в общем то уже давно это сделал.

Судя по всему - слишком давно, стоит повторить

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

23. "Компания Google представила совместимый с zlib алгоритм сжат..."  –2 +/
Сообщение от Аноним (??) on 01-Мрт-13, 19:47 
LZ4 же
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

24. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 19:56 
> Лучше бы наоборот: сжимал на 3-8% хуже, но в 100 раз быстрее.

или в 100 раз лучше и на 3-8% быстрее

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

39. "Компания Google представила совместимый с zlib алгоритм сжат..."  +5 +/
Сообщение от Аноним (??) on 01-Мрт-13, 21:10 
> или в 100 раз лучше и на 3-8% быстрее

А с этой проблемой борется аппаратный девайс "губозакаточная машинка".

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

93. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от hummermania (ok) on 03-Мрт-13, 09:30 
Бабушкин залогиньтесь
Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

38. "Компания Google представила совместимый с zlib алгоритм сжат..."  +2 +/
Сообщение от Аноним (??) on 01-Мрт-13, 21:09 
> Лучше бы наоборот: сжимал на 3-8% хуже, но в 100 раз быстрее.

Используйте LZO, LZ4, Snappy, quicklz, ... - и вы получите то что хотели. Ну может и не в сто раз, но до нескольких сотен мегабайтов в секунду на ядро они таки разгоняются.

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

62. "Компания Google представила совместимый с zlib алгоритм сжат..."  –2 +/
Сообщение от Аноним (??) on 01-Мрт-13, 23:21 
Но это не продукция гугл... И за это не спонсируют...
Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

63. "Компания Google представила совместимый с zlib алгоритм сжат..."  –1 +/
Сообщение от Аноним (??) on 01-Мрт-13, 23:21 
> Но это не продукция гугл... И за это не спонсируют...

... И не пиарят.

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

67. "Компания Google представила совместимый с zlib алгоритм сжат..."  +1 +/
Сообщение от Sokoloff on 02-Мрт-13, 00:52 
> Но это не продукция гугл... И за это не спонсируют...

Snappy как раз гугловский.

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

71. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 02-Мрт-13, 02:00 
> Но это не продукция гугл... И за это не спонсируют...

А давно у гугли snappy отобрали? :) А то он в принципе достаточно конкурентоспособный, хоть и несколько горбатый в плане кода, да и вообще. Т.е. си++ на ровном месте неизвестно зачем - гугля подтвердила звание велосипедистов. Есть впрочем и вариант на чистом си от сторонних чуваков. Но это не заслуга гугли.

Но если забить на имена и уделить внимание цифрам, LZ4 обычно чутку лучше жмет при чутку более быстрой скорости, хотя все это эфемерно и от характера данных зависит. И сам код LZ4 как-то средненький весьма, велосипедиками тоже местами попахивает. И вызывает вопросы "а что если я ему на вход подам вот такой побитый поток?", например.

Наиболее солидно по коду и внятной оформленности из них выглядит, пожалуй, LZO. Оформлен как приличная либа с изрядной системой сборки, жрущей что дали (даже относительно странные и экзотичные компилеры и прочая) и ништяками полезными для кроссплатформенности. Наколенности - минимум. Код качественный и логичный, формат битстрима - достаточно понятен и не вызывает вопросов. И даже портабельные средства I/O есть, так что endianess и битность разных платформ не будет головняком пользователя либы при записи сжатых данных в файл. Протестирован на куче платформ всех мастей, битностей и endianess, чем указанные похвастать имхо не могут.

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

50. "Компания Google представила совместимый с zlib алгоритм сжат..."  +3 +/
Сообщение от Аноним (??) on 01-Мрт-13, 22:28 
> Лучше бы наоборот: сжимал на 3-8% хуже, но в 100 раз быстрее.

Во фантазер.. ) Ты мечтаешь в свою флэшку уместить весть интернет?

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

37. "Компания Google представила совместимый с zlib алгоритм сжат..."  –2 +/
Сообщение от Okarin (ok) on 01-Мрт-13, 21:07 
>Zopfli

Зоофил, лол.

Как-то несерьезно, жмет на 3-8% в сто раз медленнее.
Я так понял предлагают им в вебе статику и данные аля JSON паковать? Первое еще ладно, но каждый запрос со стократной нагрузкой жать - это только гугле себе может позволить.

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

40. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 21:11 
> Я так понял предлагают им в вебе статику и данные аля JSON паковать?

Да это гугл долго отпускал ручник, advancecomp с улучшенным deflate из 7zip-а для перепаковки подобного барахла в репах у дистров уже несколько лет как есть. И только до гугля как до жирафов. Ну и NIH, куда же без него.

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

52. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 22:31 
>> Я так понял предлагают им в вебе статику и данные аля JSON паковать?
> Да это гугл долго отпускал ручник, advancecomp с улучшенным deflate из 7zip-а
> для перепаковки подобного барахла в репах у дистров уже несколько лет
> как есть. И только до гугля как до жирафов. Ну и
> NIH, куда же без него.

Вы посмелее возражайте - может выйдете из ГИПНОЗА! )))

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

92. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 03-Мрт-13, 06:34 
> Вы посмелее возражайте - может выйдете из ГИПНОЗА! )))

Да нет там никакого гипноза - велосипедят в гугле по черному. Snappy уже навелосипедили. При том что он в принципе сопоставим с LZO и обычно немного проигрывает и по скорости и по степени сжатия LZ4. И зачем-то си++ за уши притянут, хотя от си++ ничего и не используется почти. Зато область применения заметно сужает - севая либа более широко применима. Например в ядре, etc. О, кстати...

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

54. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 22:32 
>> Я так понял предлагают им в вебе статику и данные аля JSON паковать?
> Да это гугл долго отпускал ручник, advancecomp с улучшенным deflate из 7zip-а
> для перепаковки подобного барахла в репах у дистров уже несколько лет
> как есть. И только до гугля как до жирафов. Ну и
> NIH, куда же без него.

Гугл переложил проблему серверов на пользователя!

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

51. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 22:30 
>>Zopfli
> Зоофил, лол.
> Как-то несерьезно, жмет на 3-8% в сто раз медленнее.
> Я так понял предлагают им в вебе статику и данные аля JSON
> паковать? Первое еще ладно, но каждый запрос со стократной нагрузкой жать
> - это только гугле себе может позволить.

Так и запросов на контент в сто раз меньше. Пока клиент пережует... )))

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

55. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Аноним (??) on 01-Мрт-13, 22:41 
>Обратной стороной повышения коэффициента сжатия без потери совместимости >является значительное повышение трудоёмкости работы алгоритма, который сжимает >примерно в 100 раз медленнее zlib.

Может быть ключевым моментом фразы является - " без потери совместимости"?...
Гугл открыл алгоритм, которому мешают "путы прошлой совместимости"?

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

76. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от XoRe (ok) on 02-Мрт-13, 11:23 
> Может быть ключевым моментом фразы является - " без потери совместимости"?...
> Гугл открыл алгоритм, которому мешают "путы прошлой совместимости"?

Да.
Но.
Они могут протолкнуть и lzma/xz в качестве ещё одного способа сжатия в браузеры и серверы.
Если уж такую штуку, как spdy проталкивают.

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

80. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от oneonfire on 02-Мрт-13, 19:14 
https://aur.archlinux.org/packages/zopfli-git/
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

81. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Michael Shigorin email(ok) on 02-Мрт-13, 19:31 
> https://aur.archlinux.org/packages/zopfli-git/

  msg "Connecting to the midori git repository..."
И вот всё у них так, а потом спрашивают, зачем rpm такие сложные макросы.
Ответить | Правка | ^ к родителю #80 | Наверх | Cообщить модератору

82. "Компания Google представила совместимый с zlib алгоритм сжат..."  –1 +/
Сообщение от oneonfire on 02-Мрт-13, 20:07 
Создавал на основе другого PKGBUILD, уже все исправленно...
Ответить | Правка | ^ к родителю #81 | Наверх | Cообщить модератору

86. "Компания Google представила совместимый с zlib алгоритм сжат..."  –1 +/
Сообщение от Michael Shigorin email(ok) on 03-Мрт-13, 01:40 
> Создавал на основе другого PKGBUILD

Да это понятно, просто с макросами могло обойтись даже без помарки :)

> уже все исправлено...

Затем и сообщал.

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

84. "Компания Google представила совместимый с zlib алгоритм сжат..."  –2 +/
Сообщение от Аноним (??) on 02-Мрт-13, 21:01 
Для кэш-серверов это будет хорошей находкой.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

94. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от cijic email(ok) on 03-Мрт-13, 13:13 
Откуда информация про "медленнее в 100 раз"?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

102. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от dq0s4y71 (??) on 06-Мрт-13, 18:13 
С сайта производителя. Вчера только щупал эти zopfli, какой-то экстраординарной тормознутости не заметил. С другой стороны, я не все опции пробовал.
Ответить | Правка | ^ к родителю #94 | Наверх | Cообщить модератору

103. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от cijic email(ok) on 06-Мрт-13, 19:12 
> С сайта производителя. Вчера только щупал эти zopfli, какой-то экстраординарной тормознутости
> не заметил. С другой стороны, я не все опции пробовал.

Можете скинуть цитату? Я её почему-то упорно не нахожу.

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

98. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от gara email(??) on 04-Мрт-13, 11:23 
"жмет на 3-8% "  это только мне показалось несерьезным...

а для скорости юзайте Parallel gzip = pigz  (http://zlib.net/pigz/)
вроде есть в репозиториях

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

99. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Michael Shigorin email(ok) on 04-Мрт-13, 15:04 
> "жмет на 3-8% "  это только мне показалось несерьезным...

_плотнее_

> а для скорости юзайте Parallel gzip = pigz

У него компрессия довольно заметно падает на интересных количествах ядер, к сожалению.

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

100. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Led (ok) on 04-Мрт-13, 15:49 
>> а для скорости юзайте Parallel gzip = pigz
> У него компрессия довольно заметно падает на интересных количествах ядер, к сожалению.

Нет, не очень.

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

104. "Компания Google представила совместимый с zlib алгоритм сжат..."  +/
Сообщение от Anton (??) on 12-Мрт-13, 11:35 
А чем это лучше того, что делает 7zip ?

7za a -tgzip -mx9 -mpass=15 -mfb=257 -ba -bd compressed.gz raw

дает файл меньшего размера, чем gzip -9 при этом формат тот же.

Тест на файле jquery-1.9.1.js
исходный размер - 268381 байт.

gzip -9: 79522 байт, 0.064 sec
7zip:    76067 байт, 1.605 sec

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

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

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




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

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