One of the main features of Android 4.4 KitKat is Project Svelte, which makes the brand new OS run on older hardware that may be considered obsolete by today’s standards (dual-core CPU, 512MB of RAM and qHD display), but which is a step in the right direction for Google when it comes to fighting OS fragmentation.
We’ve suspected all along that KitKat will bring software optimizations for older devices, considering the various leaks that preceded the quiet late October KitKat announcement, and Google made it all official when it released official information about the new OS. But we didn’t know that Google used a special Nexus 4 unit that used only two processors, 512MB of RAM and a 960 x 540 (qHD) resolution display to test out KitKat and actually make it work.
Google’s head of engineering Dave Burke in an interview with ReadWrite has shared the untold story of Project Svelte. Here are some revealing quotes:
“The goal of Project Svelte was basically to reduce the memory footprint to fit into 512 megs. The way we did it, by the way-which we didn’t talk about-was to take a Nexus 4 and adapt it to run at 512 megs.”
“We adapted the resolution to qHD that is 960-by-540 because that is kind of the sweet spot for entry level smartphones,” Burke said. “We reduced it from four CPUs to two CPUs. We reduced the clock frequency and whatnot. And literally a bunch of us just used that as our default phone. It was painful, and it was broken to start with.”
Once the special Nexus 4 was “constructed” Google had four objectives in mind:
- Reduce the footprint of the system.
- Reduce the footprint (memory usage) of the apps that run on a Google Experience (Nexus) device.
- Fix how apps react and crash during bad memory situations.
- Provide better measurement and instrumentation of how apps are running in Android so developers can see how memory-conscious their apps are.
According to the publication, the first two objectives were achieved thanks to using the dumbed down Nexus 4 version. Furthermore, in order to reduce memory usage, the company stripped Google apps from the OS making them behave as standalone apps. The last two objectives were achieved by creating a RAM usage score – ProcStats – to keep an eye on how apps were using the available memory, and then by monitoring RAM usage efficiency in apps.
Ultimately, KitKat got the best of Project Butter and Project Svelte, both projects being overseen by Burke. “We were kind of joking that, when I started, the first thing that I was working on was Project Butter to make the system smoother,” the exec said. “The thing is, butter puts on weight. So then I did Project Svelte to lose weight. So now my contribution to Android is basically zero,” he joked.
Now that the interesting secrets of Project Svelte have been unveiled, the tricky part still remains, and that’s updating older devices to Android 4.4 KitKat. Motorola has already added various older devices to the list of KitKat-supported handsets, and we’re certainly looking forward to seeing what old devices will be the first get the new desert upgrade, whether they’re made by Moto or anyone else.
Sadly, the Galaxy Nexus, a device that would most likely qualify for KitKat, is not officially supported anymore for software upgrades.