The OpenNET Project / Index page

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



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

Оглавление

Первый стабильный выпуск zlib-ng, высокопроизводительного форка zlib , opennews (??), 17-Мрт-21, (0) [смотреть все] +1

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


21. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +/
Сообщение от Аноним (-), 17-Мрт-21, 17:02 
> Или я чего то не знаю,

Наверное не знаешь вообще ничего. Все что ты видишь перед собой, в той или иной мере использует zlib, вся твоя графика без нее работать не будет, даже твой глубоко консольный пакетный менеджер без нее не может. Игры и инторнеты и подавно.

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

23. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  –2 +/
Сообщение от Аноним (7), 17-Мрт-21, 17:08 
Или же знаю по крайней мере больше тебя? Во всяком случае, deflate очень медленный и неэффективный, как ни крути.
Ответить | Правка | Наверх | Cообщить модератору

27. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +/
Сообщение от Аноним (-), 17-Мрт-21, 17:53 
Ты даже не знаешь как работает пнг
Ответить | Правка | Наверх | Cообщить модератору

31. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  –3 +/
Сообщение от Аноним (7), 17-Мрт-21, 18:18 
Может быть. Это не делает deflate менее опциональным.
Ответить | Правка | Наверх | Cообщить модератору

34. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +/
Сообщение от Аноним (35), 17-Мрт-21, 19:14 
Спасибо за ыкспердное мнение.
Ответить | Правка | Наверх | Cообщить модератору

59. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +/
Сообщение от Аноним (58), 17-Мрт-21, 22:22 
> Ты даже не знаешь как работает пнг

Таки можно приколоться и сделать нежатый png. Или RLE-only. Однако для декодирования произвольного inflate все же понадобится.

p.s. а таки png устарел... ну вот не лучшая либа по сжатию это, словарик мелкий, скорость распаковки так себе. Тот же zstd и жмет лучше и декомпрессится быстрее одновременно.

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

280. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +/
Сообщение от topin89 (ok), 27-Мрт-21, 02:06 
Я ещё могу понять, что неэффективный (тут по коэффициенту сжатия всё равно всех делает PAQ8) или неоптимальный (где, судя по всему, хорош Zstandard), но с каких это пор он медленный?
Ответить | Правка | К родителю #23 | Наверх | Cообщить модератору

281. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +/
Сообщение от Аноним (7), 27-Мрт-21, 02:24 
На сжатие он медленный, особенно на 9чку. Не для сжатия текстур скажем так. На распаковку достаточно ок конечно.
Ответить | Правка | Наверх | Cообщить модератору

24. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  –1 +/
Сообщение от Аноним (7), 17-Мрт-21, 17:11 
И да, помимо веб-страниц он использовался примерно только в png (zlib и был сделан для png).
Ответить | Правка | К родителю #21 | Наверх | Cообщить модератору

60. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +2 +/
Сообщение от Аноним (58), 17-Мрт-21, 22:25 
Вот ты ламер. Он используется много где. А просто потому что долгое время это было 1 приличной опенсорс либой сжатия.

Ну например, формат данных HMM III (и IV) пожат тем самым deflate'ом. О чем прозрачно намекает копирайт Адлера и проч в коде их бинаря (статически влинковано, при том уязвимая версия, трололо, удачной игры по сети!).

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

67. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  –2 +/
Сообщение от Аноним (7), 17-Мрт-21, 22:42 
Прости, но… С каких пор коммерческие поигручечки (из 90х!) считается за "используется"? Им ведь ровно всё равно, чем жать, многие и не жмут даже нули -- в итоге все эти гигабайты сейвов сжимающиеся в 100000 раз валяются на диске как есть, ровно то же самое и с текстурами. Допустим, может использоваться для _медленного_ сжатия текстур где-то, допустим. Ну и? А вот в левелдб используется снаппи, дальше что? Этот же снаппи может использоваться опционально и не очень ещё в десятке проектов. Странно, почему не дефлейт, он же такой хороший и универсальный?
Ответить | Правка | Наверх | Cообщить модератору

81. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +2 +/
Сообщение от Аноним (81), 17-Мрт-21, 23:04 
> Прости, но… С каких пор коммерческие поигручечки (из 90х!) считается за "используется"?

С таких каких я в них играю, например.

> 100000 раз валяются на диске как есть, ровно то же самое
> и с текстурами.

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

Но факт в том что они вот настолько считают это ценностью. И игроделы это юзают. В смысле коммерческие проприетарные, конечно.

> Допустим, может использоваться для _медленного_ сжатия текстур где-то,
> допустим. Ну и? А вот в левелдб используется снаппи, дальше что?

А ничего. Snappy вообще один из самых бестолковых алгоритмов. Единственное его "достоинство" - NIH. В остальном он не делает ни LZ4, ни LZO, ни другие сравнимые. Ни по скорости ни по сжатию.

> Этот же снаппи может использоваться опционально и не очень ещё в
> десятке проектов. Странно, почему не дефлейт, он же такой хороший и универсальный?

Потому что это алгоритмы из сильно рахных категорий. Snappy в принципе степень сжатия deflate не получит на большинстве типов данных. Куды гольному LZ с туповатым битстримом супротив LZ+Huffman по сжатию? Но по скорости декодирования - отпедалить два алгоритма (LZ + Huffman), очевидно, дольше чем один. Особенно актуально для распаковки LZ, которая сама по себе довольно быстрая операция в силу принципов работы.

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

85. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  –1 +/
Сообщение от Аноним (7), 17-Мрт-21, 23:12 
>RadGameTools

Опять некрофильствуешь? Я практически уверен что они кокнулись ещё в 90 (да, я в курсе, что в начале нулевых было ещё пара игрушек с bik).

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

>из сильно рахных категорий

По-моему, это несколько упрощённая и понерфленная версия zlib, возможно, именно благодаря нему появился brotli. А то и zstd (наш спаситель).

Никакого отношения это всё ни к чему не имеет, deflate пусть универсальный, но с любой стороны дорогой и медленный даже сегодня, что говорить о ситуации 30 лет назад.

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

119. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +1 +/
Сообщение от Аноним (-), 18-Мрт-21, 04:51 
> Опять некрофильствуешь? Я практически уверен что они кокнулись ещё в 90 (да,
> я в курсе, что в начале нулевых было ещё пара игрушек с bik).

Черта с два! Живее всех живых. И просто для понимания, в PS5, кажется, один из их форматов В ЖЕЛЕЗО ВХАРДКОЖЕН. В смысле, там после SSD хардварный декодер. Выжимает гигов 5, чтоли, в секунду. Что дает совсем иные понятия о времени loading крутых тяжелых гамез.

И даже, цуки проприетарные, выпилили, вот, репу с альтернативной реализацией своих экзотов. Правда потом из-за жесткого бэкслэша и попадания в новости с негативным контекстом - вернули.

> по причине недостаточной производительности на сжатии, что в некоторых случаях роялит.

Это разные классы алгоритмов. Snappy - в той же категории что LZ4, LZO, LZ5, Lizard, lsza ... (имя им легион). Одностадийный LZ, без хаффмана (арифметика, ANS, rangecoder, в общем entropy coding). Вторая фаза - кодирование за LZ энтропийным кодером повышает сжатие, но это два алгоритма друг за другом, поэтому медленнее. Особенно на распаковку.

Фэйл в том что по параметрам snappy вообще совсем ничем не интересен. Он ну вот не делает сравнимые алгоритмы. Вроде бы совсем ни в чем, кроме NIH синдрома у гугла. Поэтому и не встречается почти, кроме пары гуглопроектов.

> По-моему, это несколько упрощённая и понерфленная версия zlib, возможно, именно благодаря
> нему появился brotli. А то и zstd (наш спаситель).

Это другой класс алгоритмов - LZ без entropy coding. Точнее, zlib, zstd, lzma и ко - попросту двухступенчатые алгоритмы. Сперва примерно такой же по смыслу LZ, но его выход потом отдается фазе entropy coding. Поэтому декомпрессия медленнее, надо 2 разных алгоритма сжевать вместо 1.

Нагляднее всего это в формате Lizard (потомок LZ5) видно, там даже LZ в чистом виде очень странно складывает результат, в 5 разных субпотоков (которые опционально можно huffman'у отдать, каждый отдельно конечно).

> Никакого отношения это всё ни к чему не имеет, deflate пусть универсальный,
> но с любой стороны дорогой и медленный даже сегодня, что говорить о ситуации 30 лет назад.

Ну да, он медленноват и не очень хорошо жмет, словарик мелкий. В эпоху DOS оперативки видите ли было сильно меньше...

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

82. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  –2 +/
Сообщение от Аноним (7), 17-Мрт-21, 23:04 
Хотя, что касается снаппи… Будем считать, что это было тёмное время. Нет, конечно, на сжатие он в 2 и более раз быстрее, но он ведь на распаковку медленнее zlib и жмёт при этом в 2 раза хуже. Но суть в том, что медленное ресурсоёмкое сжатие походит не везде и не для всего, а так конечно может быть использовано любое сжатие где угодно. Но вот на уровне стандарта или формата файла zlib только в png.
Ответить | Правка | К родителю #67 | Наверх | Cообщить модератору

154. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +/
Сообщение от Аноним (-), 18-Мрт-21, 12:40 
> Хотя, что касается снаппи… Будем считать, что это было тёмное время.

Будем считать, что у кого-то в гугле NIH очень зудел.

> Нет, конечно, на сжатие он в 2 и более раз быстрее, но
> он ведь на распаковку медленнее zlib

Ващет быстрее. Но проблема в том что сравнимые алгоритмы либо
- Жмут лучше а распаковываются примерно как оно.
- Жмут примерно так же, но распаковываются быстрее.

Есть такая штука - pareto frontier. Грубо говоря, некая кривая, "степень сжатия vs скорость распаковки". Чем лучшем сжатие, тем, естественно, сложнее это потом быстро распаковывать из-за более продвинутого алгоритма и трюков формата. Проблема snappy в том что он находится не на этой кривой state of art'а, а где-то здорово под ней, не демонстрируя стоящих результатов вообще ни с каким выбором этих соотношений. И пойнт этого дизайна вызывает вопросы, если это нечто новое. Ну, предполагается что если кто-то новое дизайнит то оно чем-то лучше старого, чтоли. А так алгоритмов такого класса и без гугля было навалом, fastlz, quicklz, lzo, примерно в то же время lz4 вылупился, более длинный список - в lzbench можно посмотреть, "fast" кодеки.

> и жмёт при этом в 2 раза хуже.

Если это на примере тех XMLок с ratio в 4%, там очень специфичный результат. Когда инфо настолько избыточное, входной поток в декомпрессоре почти отсутствует и не рушит кэш, и алгоритм сильно втапливает. И чем лучше сжатие тем больше выигрыш на этом. Однако если коэффициент сжатия более вменяемый, скажем, 30-50%, такая халяве не наступает, входные данные достаточно интенсивно вымывают кэш, алгоритмы более-менее в равных условиях без дискриминаци по сжатию, и соотношения вообще совсем другие - snappy уделает zlib'а по скорости в пару раз на распаковке, просто потому что там декомпрессор тривиальный, в отличие от. Это неудачные/специфичные тестовые данные, сильно избыточнее типового случая.

> Но суть в том, что медленное ресурсоёмкое сжатие походит не везде и не для всего,

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

> а так конечно может быть использовано любое сжатие где угодно. Но вот на уровне стандарта
> или формата файла zlib только в png.

Очень распостраненный формат сжатия на самом деле. Всякие gzip и ко - deflate. Или вон ресурсы и сэйвы HMMIII/IV. А на самом деле в силу халявной лицензии и существования дочерта лет - таки встречается в каждой дырке. И стандартной и не очень. В маздае installshield злибом сетапы паковал. "Installshield CAB". Это не то же самое что MS CAB, другой формат. Впрочем, последний тоже как один из вариантов алгоритма deflate допускает (называется MSZIP, но суть та же что и обычно). Эксплорер кстати .zip сразу жрет, куды ж он без поддержки inflate такой красивый? Или этого тоже мало?

Оно настолько распостранено - что классификаторы неизвестных файлов и проч даже ловят хидеры zlib и проч и выдают нечто типа "zlib-compressed data", как generic классификацию даже если они не знают формат лично. Либу нашару вывалили много лет назад - ей и попользовался все кому не лень, их легион. Достаточно попробовать zlib у себя в системе удалить целиком, посмотрев сколько от него depends...

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

157. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +/
Сообщение от Аноним (7), 18-Мрт-21, 14:01 
>Ващет быстрее. Но проблема в том что сравнимые алгоритмы

Это на примере тестовых файлов предоставленных авторами snappy и результат бенчмарка предоставленного авторами snappy. Глубоко я не копал.

>Есть такая штука - pareto frontier. Грубо говоря, некая кривая, "степень сжатия vs скорость распаковки".

Только zstd сжимает как lzma9 (или даже лучше, часто ощутимо), даже быстрее lzma9, и распаковывает всё равно  в десятки раз быстрее (без преувеличения), в связи с чем меня всегда очень интересовало где это штука была и как это про неё забыли. А, может быть, она не имеет никакого отношения ко сжатию, и теоретические ограничения вызваны лишь текущими представлениями, нет?

> распостраненный формат сжатия

Я смотрел, что там от zlib зависит. Это не самый эффективный формат с любой стороны. Получается, "лишь бы было" и "достаточно хорошо" куда чаще, чем действительно какая-то польза и нужда.

-Qt/kde
-glib/gtk
-cairo/mesa (те самые сжатые текстуры и тут пролезли? deflate для текстур использовать… изверги)
-библиотеки шрифтов
-cmake
-разные эмуляторы (они опционально поддерживают сжатые gzip файлы, по крайней мере, часть из них)
-libxml2 (не в курсе, с какими целями)
-python/ruby/perl/nodejs
-git/openssh/rsync и браузеры
-gnupg
-libavif и gpac (не знаю, насколько опционально)
-mkvtoolnix (допустим)
-gcc/gdb/llvm (без deflate тут никуда понятно *сарказм*)

И что-то всё, кончились пользователи deflate. Из 1300 приложений это не так и много.

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

180. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +/
Сообщение от Аноним (-), 18-Мрт-21, 23:42 
> авторами snappy. Глубоко я не копал.

Верить авторам алгоритмов стоит с оговорками. Особенно если они из гугола.

> Только zstd сжимает как lzma9 (или даже лучше, часто ощутимо),

Вообще-то чаще всего таки хуже. Особенно с всеми фичами. Но не сильно. А распаковка *сильно* быстрее. Что и делает zstd интересным. И он соответственно ближе к этой кривой. Но все же он как движок сжатия в целом чуть менее плотный. Я их плотно срвнивал на очень разных данных с сравнимыми параметрами.

> даже быстрее lzma9, и распаковывает всё равно  в десятки раз быстрее (без преувеличения)

LZMA таки тормозной в распаковке. Но использует лучшие трюки получения ratio - половина остальных собезьянило технологии и идеи оттуда.

> она не имеет никакого отношения ко сжатию, и теоретические ограничения вызваны
> лишь текущими представлениями, нет?

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

>> распостраненный формат сжатия
> Я смотрел, что там от zlib зависит.

Дофига всего. Он в куче стандартов, форматов и программ на самом деле.

> Это не самый эффективный формат с любой стороны.

Словаря 32 кило на современных данных видите ли маловато бывает.

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

Просто он часто оказывается "good enough". Сжатие уже не позорное, скорость не как у LZMA все же, лицензия на шару, и есть под все что шевелится. А раньше особо и альтернатив не было. А так то zstd появился потому, что его автор нащупал почву для улучшений.

Если кто не знает, автор ZSTD теоретически должен был стать маркетологом. Практически его занесло на компрессионные ресурсы, ему вштырило, он возьми и сделай LZ4. Народ сказал - офигеть, дайте две! И чувак решил сменить карьеру, круто и всерьез. Сейчас он в Facebook эксперт по сжатию. А ты чего думаешь они к btrfs привинтили? (ага, девы оной тоже там есть).

> -gcc/gdb/llvm (без deflate тут никуда понятно *сарказм*)

Сжатие дебажных символов, etc. Оно опциональное вроде.

> И что-то всё, кончились пользователи deflate. Из 1300 приложений это не так и много.

Там еще inter-dependencies по цепочке, половина либ ими пользуется. Хотите TIFF читать? Оок, а zip - один из валидных субформатов. А сколько из 1300 программ в PNG умеет? Небось каждая вторая? Ну а без libpng это не получится и та depends на zlib ессно. Сюрприз!

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

244. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +/
Сообщение от Аноним (7), 19-Мрт-21, 14:23 
>сколько из 1300 программ в PNG умеет

Штук 5, но в целом согласен. Более того, я подозреваю, что зависимость от zlib там много где может быть именно из-за png. У tiff поддержка zlib/lzma/zstd как раз опциональная, я тут рассматриваю только обязательные зависимости. По остальному мне нечего сообщить.

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

249. "Первый стабильный выпуск zlib-ng, высокопроизводительного фо..."  +/
Сообщение от Аноним (249), 20-Мрт-21, 03:56 
>>сколько из 1300 программ в PNG умеет
> Штук 5,

Это, имхо, врядли. PNG ща много где юзается. Ну и без zlib он как бы ни о чем. Есть минимальные генераторы нежатых версий без этого, но вот прочитать произвольный png без zlib таки будет обломно.

> tiff поддержка zlib/lzma/zstd как раз опциональная,

Настолько же как в PNG. Вы можете записать PNG без сжатия (некая кантата с чексуммами все же будет все-равно, но при желании минимальная генерация PNG решается без zlib в зависимостях).

А если произвольный файл захотеть открыть - и там и там *может* (но не обязан, я нежатые PNG и в диком виде встречал) быть пожат zlib. И если это было так - ну вы и обломаетесь. Чем облом в одном и другом случае так уж отличается?

> я тут рассматриваю только обязательные зависимости. По остальному мне нечего сообщить.

Возможно скроить нежатый png без zlib в обязаловку. Ну, примерно как нежатый тифф. И прочитать его тоже без zlib соответственно.

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

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

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




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

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