The OpenNET Project / Index page

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

22.09.2015 12:38  Компания Google представила новый алгоритм сжатия данных Brotli

Компания Google анонсировала алгоритм сжатия данных Brotli, который отнесён к алгоритмам сжатия общего назначения, но позиционируется как решение для минимизации объёма данных, передаваемых по сети. Спецификация Brotli передана в комитет IETF (Internet Engineering Task Force), занимающийся развитием протоколов и архитектуры Интернет, в качестве претендента на получение звания интернет-стандарта. В настоящее время Brotli уже применяется в качестве алгоритма сжатия шрифтов Web Open Font Format 2.0. Эталонная реализация Brotli написана на языке С++ и распространяется под лицензией Apache 2.0.

Brotli демонстрирует уровень сжатия, сопоставимый с лучшими современными методами сжатия общего назначения, но опережая их по скорости кодирования и декодирования. Например, в тесте Canterbury Corpus алгоритм Brotli превосходит по уровню сжатия LZMA и bzip2 и при этом меньше потребляет ресурсов CPU. По производительности Brotli близок к алгоритму Deflate, но превосходит его по степени сжатия. По сравнению с представленным в 2013 году алгоритмом Zopfli, совместимым с Zlib и Deflate, Brotli позволяет сжимать данные на 20–26% эффективнее.

Brotli является комбинацией современного варианта алгоритма LZ77, адаптивного кодирования Хаффмана и методов контекстного моделирования второго порядка. Более высокий уровень сжатия по сравнению с LZMA и bzip2 достигается применением контекстного моделирования второго порядка, повторным использованием кодов энтропии, более крупным размером окна кодирования и использованием совместных кодов распределения (joint distribution code). Компания Google надеется, что в скором времени поддержка данного формата будет реализована во всех основных браузерах (в рамках поддержки Web Open Font Format 2.0), что позволит уменьшить размер передаваемых данных и, как следствие, приведёт к меньшему потреблению энергии при открытии контента на мобильных устройствах.

  1. Главная ссылка к новости (http://google-opensource.blogs...)
  2. OpenNews: Компания Google представила совместимый с zlib алгоритм сжатия Zopfli
  3. OpenNews: Компания Google открыла исходные тексты библиотеки регулярных выражений RE2
  4. OpenNews: Компания Google открыла код Snappy, библиотеки для сжатия данных
  5. OpenNews: Автор LZ4 представил новый быстрый и эффективный алгоритм сжатия ZSTD
  6. OpenNews: Выпуск библиотеки сжатия LZHAM 1.0, нацеленной на создание более быстрой альтернативы LZMA
Лицензия: CC-BY
Тип: К сведению
Ключевые слова: zopfli, compress
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, Аноним (1), 13:17, 22/09/2015 [ответить] [показать ветку] [···]    [к модератору]
  • +10 +/
    цитата кода
    "#define NUM 9  /* Good value: 9. */"
     
     
  • 2.3, Crazy Alex (ok), 13:20, 22/09/2015 [^] [ответить]    [к модератору]
  • +16 +/
    В подобной алгоритмике экспериментально подобранные "хорошие значения" сплошь и рядом, особенно на ранних этапах. Иногда потом теория под них находится, иногда - нет.
     
     
  • 3.28, Аноним (-), 15:54, 22/09/2015 [^] [ответить]    [к модератору]
  • –5 +/
    возможно, аноним имел ввиду что лучше написать "const int NUM = 9;"
     
     
  • 4.30, pavlinux (ok), 16:29, 22/09/2015 [^] [ответить]    [к модератору]
  • +13 +/
    А чё не " const static unsigned short volatile const NUM __attribute__ ((aligned (16))) = 0b1001u;" ?
    Ну так, чисто чтоб всех анонимов сразу в моск пробило. :)
     
     
  • 5.33, Sw00p aka Jerom (?), 17:44, 22/09/2015 [^] [ответить]    [к модератору]
  • +5 +/
    убил
     
     
  • 6.43, pavlinux (ok), 19:57, 22/09/2015 [^] [ответить]    [к модератору]  
  • +4 +/
    > убил

    Чорт, забыл inline

     
     
  • 7.46, Аноним (-), 20:52, 22/09/2015 [^] [ответить]    [к модератору]  
  • +/
    И дважды const поставил.
    А вот register - забыл.
     
     
  • 8.47, pavlinux (ok), 22:05, 22/09/2015 [^] [ответить]    [к модератору]  
  • +1 +/
    > И дважды const поставил.

    Курить стандарт срочно.

    > А вот register - забыл.

    Туда же.

     
     
  • 9.51, Аноним (-), 22:32, 22/09/2015 [^] [ответить]    [к модератору]  
  • –3 +/
    >> И дважды const поставил.
    > Курить стандарт срочно.
    >> А вот register - забыл.
    > Туда же.

    Вам бы самому тоже не помешало.

     
     
  • 10.52, pavlinux (ok), 23:37, 22/09/2015 [^] [ответить]    [к модератору]  
  • +1 +/
    Слив засчитан.  
     
     
  • 11.66, Аноним (-), 19:49, 23/09/2015 [^] [ответить]    [к модератору]  
  • +2 +/
    О, Ктулху, что тебя разбудило? :)
     
     
  • 12.69, pavlinux (ok), 20:28, 23/09/2015 [^] [ответить]    [к модератору]  
  • +/
    > О, Ктулху, что тебя разбудило? :)

    Осень, велосезон заканчивается, обострение. :-P

     
  • 1.2, Аноним (-), 13:20, 22/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +2 +/
    оффтоп: изнутри наружу =)
     
  • 1.4, anonymous (??), 13:20, 22/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Почему Хаффман, а не арифметическое кодирование?
     
     
  • 2.5, Crazy Alex (ok), 13:21, 22/09/2015 [^] [ответить]    [к модератору]  
  • +2 +/
    Потому что хаффман быстрее, скорее всего.
     
     
  • 3.49, Аноним (-), 22:28, 22/09/2015 [^] [ответить]    [к модератору]  
  • +/
    К тому же вокруг арифметического кодирования патентов много.
     
     
  • 4.63, anonymous (??), 12:49, 23/09/2015 [^] [ответить]    [к модератору]  
  • +/
    Патент IBM уже давно истек
     
     
  • 5.65, Andrey Mitrofanov (?), 19:30, 23/09/2015 [^] [ответить]    [к модератору]  
  • +/
    #>патентов много.
    > Патент IBM уже давно истек

    Один из "много"?  АргУмент.

     
  • 1.6, Crazy Alex (ok), 13:23, 22/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Что-то с графиком странное. deflate:1 медленнее deflate:9? Что за бред?
     
     
  • 2.9, Аноним (-), 13:30, 22/09/2015 [^] [ответить]    [к модератору]  
  • +3 +/
    все с ним в порядке.....это у вас там...
     
  • 2.10, z (??), 13:34, 22/09/2015 [^] [ответить]     [к модератору]  
  • +1 +/
    Чем больше распаковывается данных из окна совпадений - тем быстрее, т к это hot... весь текст скрыт [показать]
     
     
  • 3.12, Crazy Alex (ok), 13:40, 22/09/2015 [^] [ответить]    [к модератору]  
  • +2 +/
    А, ну да. Decompression же.
     
     
  • 4.13, z (??), 13:43, 22/09/2015 [^] [ответить]    [к модератору]  
  • +4 +/
    Поздно, меняй ник
     
  • 1.8, Аноним (-), 13:27, 22/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +2 +/
    Гугл таки купил Pied Piper?
     
     
  • 2.38, dr Equivalent (ok), 18:19, 22/09/2015 [^] [ответить]    [к модератору]  
  • +1 +/
    Не, это они Nucleus переименовали.
     
  • 1.14, Crazy Alex (ok), 14:09, 22/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    Мда, основной вывод - gzip можно выкидывать окончательно - эта штука его перекрывает полностью - и на 1 и на 9 жмёт быстрее и лучше и распаковывает быстрее, чем gzip на аналогичном уровне. bzip2 и подавно идёт лесом - при сравнимом сжатии скорость различается в разы.

    А вот lzma в скорости сжатия при сравнимом ratio новичок проигрывает, хотя распаковывает быстрее - то есть надо выбирать в зависимости от задачи. Хотя, моежт, можно уровень 10 подобрать, чтобы был сравним - тогда получится совсем универсал.

     
     
  • 2.17, Аноним (-), 14:42, 22/09/2015 [^] [ответить]    [к модератору]  
  • +4 +/
    gzip (как и zip), скорее всего, не выкинут, ибо совместимо с любыми системами. А bzip2 уже давно можно выкидывать - примерно со времен появления xz.
     
     
  • 3.19, Crazy Alex (ok), 15:12, 22/09/2015 [^] [ответить]     [к модератору]  
  • +/
    Там, где сжимаешь чаще, чем распаковываешь бэкапы те же bzip2 часто интереснее... весь текст скрыт [показать]
     
     
  • 4.67, Аноним (-), 19:52, 23/09/2015 [^] [ответить]     [к модератору]  
  • +2 +/
    Ничем он не интересный ресурсоемкий и на сжатие и на распаковку и плохо по сра... весь текст скрыт [показать]
     
     
  • 5.77, Crazy Alex (ok), 02:57, 24/09/2015 [^] [ответить]     [к модератору]  
  • –1 +/
    Cильные - жмут дольше, вообще-то, потому bzip2 и лучше А в случае тех же бекапо... весь текст скрыт [показать]
     
     
  • 6.80, Аноним (-), 23:12, 24/09/2015 [^] [ответить]     [к модератору]  
  • +1 +/
    Вообще, сильно зависит от настроек разогнать большинство сильных алгоритмов с... весь текст скрыт [показать]
     
  • 2.29, хрю (?), 16:25, 22/09/2015 [^] [ответить]    [к модератору]  
  • +5 +/
    >Мда, основной вывод - gzip можно выкидывать окончательно

    Есть мнение, что gzip вас переживёт.

     
     
  • 3.45, Crazy Alex (ok), 20:34, 22/09/2015 [^] [ответить]    [к модератору]  
  • +/
    Кхм, ну, пережить меня - это вряд ли, но да, древний мусор болтается долго, даже не имея вообще никаких преимуществ. Что весьма печально.
     
     
  • 4.72, Аноним (-), 00:44, 24/09/2015 [^] [ответить]     [к модератору]  
  • +/
    Crazy Alex Саша, ты дурак На старьё ресурсы не тратятся Лежит оно где то... весь текст скрыт [показать]
     
     
  • 5.74, Аноним (-), 01:46, 24/09/2015 [^] [ответить]     [к модератору]  
  • +1 +/
    и как, много нынче желающих таскать древний compress Вот gzip куда-то туда же у... весь текст скрыт [показать]
     
  • 2.58, Ytch (ok), 03:59, 23/09/2015 [^] [ответить]     [к модератору]  
  • +1 +/
    Они разве что про ресурсы как-то тактично умолчали или это я с ходу не нашел ... весь текст скрыт [показать]
     
     
  • 3.61, Crazy Alex (ok), 09:59, 23/09/2015 [^] [ответить]     [к модератору]  
  • +/
    Ниш со слабыми ресурсами становится всё меньше и так, разумеется, будет и дальше... весь текст скрыт [показать]
     
     
  • 4.71, Ytch (ok), 23:33, 23/09/2015 [^] [ответить]     [к модератору]  
  • +1 +/
    В не бытовухе ресурсы систем растут далеко не так стремительно, хоть в целом и... весь текст скрыт [показать]
     
  • 3.88, arisu (ok), 23:10, 30/09/2015 [^] [ответить]     [к модератору]  
  • +/
    ну, если загнуть все параметры по максимуму 8212 задумается надолго, а прирос... весь текст скрыт [показать]
     
  • 2.87, arisu (ok), 23:03, 30/09/2015 [^] [ответить]     [к модератору]  
  • +/
    особенно по размеру кода и размеру бинарей и да, жмёт она не настолько лучше, ч... весь текст скрыт [показать]
     
     ....нить скрыта, показать (14)

  • 1.15, vitalif (ok), 14:37, 22/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • –2 +/
    только щас представила? эта хрень же в WOFF2 уже хз сколько времени используется
     
     
  • 2.34, Аноним (-), 17:59, 22/09/2015 [^] [ответить]    [к модератору]  
  • –1 +/
    что это "WOFF2"?
     
  • 2.35, Andrey Mitrofanov (?), 18:07, 22/09/2015 [^] [ответить]     [к модератору]  
  • +3 +/
    Google анонсировала Спецификация Brotli передана в комитет В настоя... весь текст скрыт [показать]
     
  • 1.16, Аноним (-), 14:41, 22/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Круто, конечно, но не очень понятно при чем тут Интернет. Чтобы им что-то начали жать, надо еще стандартизировать что и когда можно жать и как клиент с сервером об этом могут договориться.
     
     
  • 2.21, Crazy Alex (ok), 15:13, 22/09/2015 [^] [ответить]    [к модератору]  
  • +/
    Ну вот они и подали для стандартизации.
     
  • 2.89, arisu (ok), 23:12, 30/09/2015 [^] [ответить]    [к модератору]  
  • +/
    > Круто, конечно, но не очень понятно при чем тут Интернет.

    при том, что они собрали дурных размеров словарь из обрывков слов, чтобы «лучше жать страницы».

     
  • 1.18, Аноним (18), 14:46, 22/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    Проталкивают новый формат, а сами не удосужились даже bzip, lzma, ppmd реализовать. В итоге будет как с WebP.
     
     
  • 2.20, Crazy Alex (ok), 15:13, 22/09/2015 [^] [ответить]    [к модератору]  
  • +/
    А зачем реализовывать заведомо худшие алгоритмы?
     
     
  • 3.22, Аноним (18), 15:15, 22/09/2015 [^] [ответить]    [к модератору]  
  • –1 +/
    > А зачем реализовывать заведомо худшие алгоритмы?

    Сейчас Chrome поддерживает только gzip, deflate. Перечисленные выше алгоритмы явно лучше этих.

     
     
  • 4.24, Crazy Alex (ok), 15:27, 22/09/2015 [^] [ответить]     [к модератору]  
  • –2 +/
    Ну вот этот и реализуют Чем убьют любой смысл использования в вебе чего-то кром... весь текст скрыт [показать]
     
     
  • 5.25, Аноним (18), 15:31, 22/09/2015 [^] [ответить]     [к модератору]  
  • +3 +/
    Firefox и остальные как будет на такую монополию смотреть Конечно же точно такж... весь текст скрыт [показать]
     
     
  • 6.36, SysA (?), 18:08, 22/09/2015 [^] [ответить]     [к модератору]  
  • –2 +/
    Firefox ка бы почти Chrome уже ... весь текст скрыт [показать]
     
  • 6.75, Аноним (-), 01:49, 24/09/2015 [^] [ответить]     [к модератору]  
  • +/
    Да им тоже прилетело за такую некооперативность на их apng тоже как-то подзабил... весь текст скрыт [показать]
     
  • 6.91, Crazy Alex (ok), 20:52, 26/01/2016 [^] [ответить]    [к модератору]  
  • +/
    А файрфокс посмотрел... и поддержал в выпуске 44: https://www.opennet.ru/opennews/art.shtml?num=43764
     
  • 2.26, фыва олдж (?), 15:32, 22/09/2015 [^] [ответить]    [к модератору]  
  • +1 +/
    > bzip, lzma, ppmd

    Почитай про zip-бомбы, про скорость сжатия.

     
     
  • 3.27, Аноним (18), 15:40, 22/09/2015 [^] [ответить]     [к модератору]  
  • +2 +/
    И gzip и Brotli точно также подвержены этому Это концептуальная проблема любой... весь текст скрыт [показать]
     
  • 2.48, vitalif (ok), 22:11, 22/09/2015 [^] [ответить]    [к модератору]  
  • +/
    оно для веба слабо годится
     
  • 2.70, Яро Ш. Я. (?), 21:52, 23/09/2015 [^] [ответить]    [к модератору]  
  • +1 +/
    >В итоге будет как с WebP

    С WebP всё прекрасно - я все скриншоты только им и кодирую. Визуально качество как jpeg, а весит в разы меньше

     
     
  • 3.76, Аноним (-), 01:50, 24/09/2015 [^] [ответить]     [к модератору]  
  • +/
    Вообще-то для скриншотов PNG есть Он вообще lossless Размер правда как повезет... весь текст скрыт [показать]
     
  • 3.78, Аноним (18), 03:55, 24/09/2015 [^] [ответить]    [к модератору]  
  • +/
    >С WebP всё прекрасно

    Конечно. Но открыть можно только Chrome и Opera которая фактически Chrome.

     
  • 3.81, Аноним (-), 23:17, 24/09/2015 [^] [ответить]     [к модератору]  
  • +/
    но есть способ лучше BARF http mattmahoney net dc barf html - сжимает воо... весь текст скрыт [показать]
     
     ....нить скрыта, показать (14)

  • 1.31, Аноним (-), 16:45, 22/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +2 +/
    Почему они взяли "LZMA implementation in 7zip 9.20.1"?
    7zip 9.20 был выпущен 2010-11-18 и не использовал LZMA2
     
     
  • 2.32, Ан (??), 17:19, 22/09/2015 [^] [ответить]    [к модератору]  
  • +2 +/
    По умолчанию не использовал, но поддержка LZMA2 там уже была.

    Вообще эти черти удивляют. Зачем они столько времени бету гоняют и не делают релиз?

     
  • 1.37, абвгдейка (ok), 18:11, 22/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    забавно, судя по графику, он вообще-то на 20% сильнее сжимает, чем deflate9, при этом на 18% медленнее. Так что не надо спешить и сломя голову бросаться менять ваши системы :)
     
     
  • 2.39, Аноним (-), 19:09, 22/09/2015 [^] [ответить]    [к модератору]  
  • +1 +/
    Мы разные графики смотрим? Brotli1 и 9 во всех номинациях лучше/быстрее deflate1 и 9, соотв-но.
     
     
  • 3.40, абвгдейка (ok), 19:30, 22/09/2015 [^] [ответить]    [к модератору]  
  • +/
    разные deflate9 быстрее Brotli1
     
     
  • 4.44, Crazy Alex (ok), 20:32, 22/09/2015 [^] [ответить]    [к модератору]  
  • +/
    deflate9 надо менять на Brotli9 - будет быстрее и сжатие, и распаковка, и лучше ратио
     
     
  • 5.53, абвгдейка (ok), 00:17, 23/09/2015 [^] [ответить]    [к модератору]  
  • +/
    это если сравнивать "ратио", а если, как гугл, сравнивать "скорость", то получается наоборот :)
     
     
  • 6.56, Crazy Alex (ok), 00:27, 23/09/2015 [^] [ответить]    [к модератору]  
  • +/
    Так у него и скорость больше. Можете pdf открыть, там цифры есть. deflate проигрывает вообще по всем статьям.
     
     
  • 7.90, arisu (ok), 23:18, 30/09/2015 [^] [ответить]    [к модератору]  
  • +1 +/
    > Так у него и скорость больше. Можете pdf открыть, там цифры есть.
    > deflate проигрывает вообще по всем статьям.

    а теперь ограничим доступную память 64-мя килобайтами.

     
  • 1.50, Ilya Indigo (ok), 22:30, 22/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    А как его самостоятельно с p7zip сравнить по скорости, степени сжатия и потреблению ресурсов?
     
     
  • 2.57, Crazy Alex (ok), 00:29, 23/09/2015 [^] [ответить]    [к модератору]  
  • +/
    В новости есть сылка на гитхаб
     
  • 1.59, Аноним (-), 08:57, 23/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    гугл таки купил фирму "пегий дудочник" (крысолов) ? =D
     
  • 1.60, Аноним (-), 09:39, 23/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    И чем же он лучше arj?
     
  • 1.62, Джо (?), 10:30, 23/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    а что там насчет lzo
     
     
  • 2.68, Аноним (-), 19:54, 23/09/2015 [^] [ответить]     [к модератору]  
  • –1 +/
    То же что и LZ4 алгоритмы другой весовой категории Они на скорость ориентирова... весь текст скрыт [показать]
     
  • 2.83, Led (ok), 01:30, 26/09/2015 [^] [ответить]    [к модератору]  
  • +/
    > а что там насчет lzo

    Не нужен при наличии lz4

     
  • 1.64, Аноним (-), 13:01, 23/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    какой у него коэффициент Вальцмана?
     
     
  • 2.73, Аноним (-), 01:21, 24/09/2015 [^] [ответить]    [к модератору]  
  • +/
    > какой у него коэффициент Вальцмана?

    7

     
  • 1.79, Аноним (-), 13:38, 24/09/2015 [ответить] [показать ветку] [···]     [к модератору]  
  • –1 +/
    с ходу что получилось hobot SERVER WORK brotli tools time cat bro 124 bro... весь текст скрыт [показать]
     
     
  • 2.82, Аноним (-), 23:22, 24/09/2015 [^] [ответить]     [к модератору]  
  • +1 +/
    А ничего что bro у вас кажись фигарил с максимальным сжатием И в результате уде... весь текст скрыт [показать]
     
  • 2.84, Аноним (-), 13:58, 26/09/2015 [^] [ответить]    [к модератору]  
  • +/
    Предполагаю, что результаты вашего теста некорректны, т.к. в первом случае файл поднимался с диска, а во втором уже из page cache.
     
  • 1.85, Evolve32 (ok), 07:31, 28/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    А почему они про zstd забыли в тесте?
     
  • 1.86, arisu (ok), 22:58, 30/09/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    …а ещё дурацкого словаря, высосаного из… неизвестно октуда (обрывки русского в нём умилили), и дичайших тормозов при попытке чуть‐чуть подкрутить уровень сжатия. плавали, знаем, не впечатлило.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


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