Inside Project Volta: lazies first, or how Google plans to boost battery life on Android L by up to 20%
After first trying to eliminate UI on the Android platform with Project Butter in 4.1 Jelly Bean, and then optimizing memory performance with Project Svelte in 4.4 KitKat, Google has now decided to tackle the most talked about issue about our smartphones - battery life. Trying to deal with this problem is Google’s newly-announced Project Volta that will come with the Android L release.
Improving battery life sounds like a noble idea, but how can Google do it? At the core of the effort comes an interesting find: the company monitored stats from the Nexus 5 revealing that roughly every 1 second of unnecessary active time (this would be the processor waking up to do a task it could do later) results in a 2-minute reduction in stand-by time. Now, imagine this on your average smartphone with 50 apps running, each taking 1 second of unnecessary active time per hour. Those seemingly small interruptions add up to a massive 100-minute reduction of your stand-by battery time for every hour all those apps run! And 1 second of unnecessary activity per hour might even be an optimistic scenario for some apps.
Project Volta: Lazies first
Project Volta pushes devs to think about battery optimizationsThis finding pushed Google to find a solution with an approach the company calls ‘lazy first’. Lazy first is basically a principle that encourages developers to schedule non-urgent tasks to be executed in the last possible moment. That’s a radical change from the current, purely performance-driven thinking apps schedule even non-urgent operations on a first-come first-serve basis.
With the new ‘lazy first’ approach, the effect accumulates for multiple apps running on this principle, so you can coalesce activity together for execution, rather than have every app continuously wake up the phone to do its operations. Let’s be clear about this push, though - it is good for tasks that do not need to return immediate user feedback. For the remaining cases, a developer would still build on a first-come first-serve basis.
JobScheduler makes lazy-fying your app easier
Of course, in order for users to fully feel the benefit, Google is making an effort to convince its third-party developers to optimize their apps as well. To make this easier, with Project Volta, Google is introducing a new API called JobScheduler.
Now, this is not a completely new approach to improving battery life - it looks a lot like the optimizations that Microsoft implemented in Windows 8 and that Apple introduced in OS X Mavericks, but Android seems to be among the pioneers of this approach in mobile.
Another element of Project Volta that will be instrumental in achieving a notable battery improvement on Android devices is the stat-laden Battery Historian tool. This is purely a developer-oriented tool that you can use to see how your app performs with an immense level of detail (down to each wake-up event it causes in a per-second timeline).
With Battery Historian developers will be able to see the problem - if there is one - with their app and why it is draining battery. You cannot fix a problem, if you cannot see it, right? Battery Historian gives devs the tools to now see the issue very clearly.
Battery Saver mode: squeeze 90 minutes more out of your dying battery
Finally, Battery Saver mode is a part of Project Volta that every user can relate to. In fact, Google claims that one can squeeze around 90 minutes more in battery life by doing the following:
- reduce the refresh rate of the display
- limit background data
Project Volta improvements: 20% better battery life with Android L
Good news is that Project Volta is not just a theoretical initiative with no real results. Quite the opposite - Google's simulation with Project Volta on the Nexus 5 shows 15-20% improvements in battery life, and we have no reasons to doubt that - when all phone makers optimize their apps - other phones should see a similar battery life boost.
reference: Google, AnandTech