Compress data more densely with Zopfli
    
    
    
    
     By Lode Vandevenne,
      Software Engineer, Compression Team
      
      Cross-posted with the Google
      Open Source Blog
By Lode Vandevenne,
      Software Engineer, Compression Team
      
      Cross-posted with the Google
      Open Source Blog
      
      The 
Zopfli Compression Algorithm
      is a new open sourced general purpose data compression library that got its name from a Swiss
      bread recipe. It is an implementation of the 
Deflate compression algorithm that
      creates a smaller output size compared to previous techniques. The smaller compressed size
      allows for better space utilization, faster data transmission, and lower web page load
      latencies. Furthermore, the smaller compressed size has additional benefits in mobile use,
      such as lower data transfer fees and reduced battery use. The higher data density is achieved
      by using more exhaustive compression techniques, which make the compression a lot slower, but
      do not affect the decompression speed. The exhaustive method is based on iterating entropy
      modeling and a shortest path search algorithm to find a low bit cost path through the graph of
      all possible deflate representations.
      
      |  | 
      | Zopfli | 
      
      The output generated by Zopfli is typically 
3–8%
      smaller compared to 
zlib
      at maximum compression, and we believe that Zopfli represents the state of the art in
      Deflate-compatible compression. Zopfli is written in C for portability. It is a
      compression-only library; existing software can decompress the data. Zopfli is bit-stream
      compatible with compression used in gzip, Zip, PNG, HTTP requests, and others.
      
      Due to the amount of CPU time required — 2 to 3 orders of magnitude more than zlib at maximum
      quality — Zopfli is best suited for applications where data is compressed once and sent over a
      network many times, for example, static content for the web. By 
open sourcing Zopfli, thus allowing
      webmasters to better optimize the size of frequently accessed static content, we hope to make
      the Internet a bit faster for all of us.
      
      
      
Lode Vandevenne is a software engineer based in Zürich. He has a special interest in
      compression algorithms, and implemented Zopfli as his 20% time activity.
      
      Posted by Scott Knaster,
      Editor