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


Robot Combat Between Unitree G1s
01/06/2025

The world's first Humanoid Robot Kickboxing contest took place on May 25 in Hangzhou, China. While the event aimed to highlight the integration of AI and robotics, the robots weren't ac [ ... ]



Making Java Easier For The Beginner
12/05/2025

Java is an intimidating language for the complete beginner, but now there is hope of simplification in the recently proposed JEP512. And the fact that it is 512 must count for something - right?


More News

 

espbook

 

Comments




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

 

 

Last Updated ( Wednesday, 23 September 2015 )