Google's new squeeze: Brotli compression open-sourced
Chocolate Factory turns Pied Piper to Deflate expectations
Google wants to bring to life the HBO series Silicon Valley: it's pitching a new open source compression algorithm into the world, with the hope that it can eventually end-of-life the venerable Deflate.
Brotli (“small bread” in Swiss German, apparently) follows on from Zopfli (“little braid,” also bread-themed), but with between 20 and 26 per cent better compression ratios.
That, software engineer Zoltán Szabadka of Google's Compression Team writes, is because while Zopfli maintained Deflate compatibility, Brotli uses new data structures.
Szabadka lists the key changes as “a 2nd order context modeling, re-use of entropy codes, larger memory window of past data, and joint distribution codes.”
In this paper, Szabadka and collaborators Jyrki Alakuijala, Evgenii Kliuchnikov, and Lode Vandevenne also explain that Brotli adds a static dictionary to the compression algorithm:
In tests under Linux 3.13.0 on an Intel Xeon Eg-1650 v2 machine running at 3.5 GHz, the researchers claimed Brotli running at 3.381:1 compression ratio could compress at 98.3 MB/s and decompress at 334 MB/s.
The fastest Deflate could run at a low-quality setting of 2.913:1 compression was 93.5 MB/s compression and 323 MB/s decompression.
Google notes that better compression would particularly benefit mobile users, who in addition to faster page loads would get savings on their data charges and hopefully lower battery consumption.
And, of course, if Brotli is a success, there's no chance that Google will end up torching a basement.
The Register would note that Deflate's endurance demonstrates just how effective the original work was: it was described in RFC 1951 in 1996.
Brotli is on GitHub here. ®