With the release today of Apple's new operating system, "Mavericks," computer science professors and long-time friends Emery Berger at the University of Massachusetts Amherst and Scott Kaplan of Amherst College are hoisting a beer to celebrate as "proud papas" of some key components based on their research.
Their contributions will significantly improve performance and extend the battery life of Apple computers operating around the world with the new OS. It uses an algorithm by Berger that lets it manage internal memory resources more efficiently. Modern computers have multiple 'cores,' each a bit like an individual brain, he explains. "Like people, when they can operate independently, those brains can run at full speed, but if they have to have a meeting to discuss something, things slow down."
His "Hoard" algorithm adopted by Apple manages memory resources in a way that reduces this communication and lets the computer make decisions faster. "Not only does this make the system faster overall, it also extends battery life because it spends less power to do the same job," Berger notes.
Meanwhile the new "compressed memory" feature in Mavericks, described somewhat cryptically by Apple as the "WKdm" algorithm, is directly based on Kaplan's research. "I'm the 'K'," he laughs. Compressed memory works by taking some of the least-used part of a program's data and shrinking it as much as possible. Doing so makes the computer run as though it has extra memory. Apple says that this technique not only makes applications run faster, it also extends battery life.
Kaplan says, "People had had the compression idea before, but they couldn't figure out how to make it work effectively." The key ideas were balance and speed, he adds. "It turned out that deciding how much to compress was a crucial question. Compressing it all would be overkill and slow the program way too much, since it takes time for the computer to do the compression. There was a balance point we had to find, the ideal amount to keep in compressed form. We found how to make the OS find that balance point on its own."
Berger and Kaplan's work has already been included in other systems. The Linux operating system has incorporated Kaplan's compressed caching algorithms for several years. Both Windows 7 and 8 use algorithms directly inspired by work from Berger's research group to improve reliability and security. But the latest Mac OS is the first that includes algorithms by both researchers. "It's nice to see our algorithms working together as well as we do," Kaplan jokes.
The two began collaborating as graduate students on ways to make computers more efficient and more responsive. Berger says, "We wanted to make that annoying little spinning beach ball go away, to get rid of the pauses that users have to endure while the computer tries to catch up."
He adds, "We feel very fortunate. Very few computer science researchers get their work adopted by industry, which has to be convinced that it's useful. We also know it can take over a decade for innovations to be widely adopted, even when they're available in open source. The fact that we were graduate students together when we began this work, that we've written three or four papers together and we now both have our fingerprints on major pieces of the new Mac OS is really gratifying."
Computer scientists typically are working on things that are a decade out from practical application or more, often before any widespread awareness of a problem, says Kaplan. Berger adds, "Things we were working on 15 years ago are now widely used. For Scott and me, what we always wanted was to have real-world impact, to have our stuff used by many people. It makes our work more enjoyable. That's where open source comes in. We always have made a point of making all of our research and source code publicly available. Without doing that, I can't imagine these algorithms would have been adopted."
Kaplan and Berger are currently working together to advances to what they call "the operating system of the future," that is, web browsers.
Explore further: Searching genomic data faster with new algorithm