Google's New Brotli Compression Is 25% Better
Written by Alex Armstrong   
Wednesday, 23 September 2015

Compression is less important these days for storage, but it is still a valuable way of saving bandwidth. Google has offered improved compression algorithms in the past and now we have Brotli, which claims to be even better. 

Unlike Google's first compression algorithm, Zopfli, Brotli isn't Deflate compatible but it too is named after a Swiss bakery product. Brotli just means "small bread" in Swiss German - which is almost appropriate.

Brotli is the subject of an internet draft and it is open sourced under the Apache Licence 2. It makes use of a new file format and this means that the tools needed to encode and decode it are also new - there is nothing backward compatible about it. 

Technically Brotli is a modification on the standard LZ77 algorithm and Huffman coding. To quote the announcement:

"The higher data density is achieved by a 2nd order context modeling, re-use of entropy codes, larger memory window of past data and joint distribution codes."

It also makes use of a static dictionary  of 13504 items from English, Spanish, Chinese, Hindi, Russian, Arabic and from HTML and JavaScript. This coupled with transforms that modify the words in the dictionary allows it to represent 1633984 sequences. 

In tests it performs well on compression ration and on decompression speed:

brotli1

For use on the web, say, it is not only size that matters but speed of decompression. A small file can be downloaded quickly and uses less bandwidth, but if a mobile device has to use lots of CPU cycles to decompress it then battery life suffers. 

You are fairly sure to encounter Brotli in the future because it is already part of version 2 of the Web Open Font Format. 

 

brotl21

 

Brotli is available to play with from its GitHub site. 

Banner


Kolosal AI-Run LLMs Locally On Your Workstation Or Edge Devices
17/04/2025

Kolosal is a new player in the LLM ecosystem, heralded as the lightweight alternative to LM Studio by requiring fewer system resources while offering similar functionality.



Linkerd 2.18 Adds Protocol Declarations
23/04/2025

Version 2.18 of the Linkerd service mesh has added features aimed at making the software better at handling problematic situations, along with an experimental build of the proxy for Windows environmen [ ... ]


More News

 

espbook

 

Comments




or email your comment to: comments@i-programmer.info

 

 

Last Updated ( Wednesday, 23 September 2015 )