Watch CBS News

Google Develops New Update Compression

Many managers tune out at technical details, but this is one time that they shouldn't, particularly if they work at companies that distribute and update software. Google's Chrome team announced a new compression algorithm (via Slashdot.org) that it expects to keep updates small. To consider the importance, think of the last time you had to download a Windows or Mac OS update. Not fun. Apparently Google has found a new way to shrink what actually has to be sent -- in at least one case by a factor of ten to one.

The way most software is updated is through binary diff algorithms. What the developer does is compare the current software with the new version to find the places where the machine code (expressed in binary) is different, hence the term. By knowing where the differences are and making the right changes to the existing file, you transform it into the newer version. Then you push the diff file out over the Internet.

But there's a problem: the files can still be large. This can slow down machines, take up bandwidth, and clearly costs the developer money in traffic charges. The smaller you make the file, the more money you save and the more convenient you make life for the customer.

Here's a comparison of a recent update that the Chrome developers did:

  • Full update: 10,385,920 bytes, or just over 10MB
  • bsdiff update (algorithm they had bee using): 704,512 bytes
  • Courgette update (their new algorithm): 78,848 bytes
That counts as both impressive results and elegant and cool technology. According to a more technical post, the big advantage is that, like any developer, Google knows a lot about the data it's trying to send out. The problem is that a small change to source code can result in a big change to the compiled code that eventually runs on a computer. What Courgette does is take the compiled code and work backwards to get an intermediate form where the difference techniques works more effectively. They're working on a paper about the technique and will post it when it is ready. Expect many software vendors to be keeping a watch -- and wondering if Google will patent the new system.

Image via stock.xchng user 080780, site standard license.

View CBS News In
CBS News App Open
Chrome Safari Continue
Be the first to know
Get browser notifications for breaking news, live events, and exclusive reporting.