Researchers at Purdue University in Indiana recently concluded the first in-depth case study of the most popular smart phone apps on the market today. After a through examination of many popular apps including Angry Birds, Facebook and Android Browser, the group found that some of the so-called “free” apps out there aren’t really all that free considering the high amounts of energy they use and the hidden costs they present in drastically reduced battery life. The researchers found that 65 to 75 percent of the total energy used to run free apps on smart phones is actually used up by running advertising-related functions. As a result, the Purdue group’s research to be presented this week at the EuroSys 2012 conference held in Bern, Switzerland will include some breakthrough suggestions on how to improve the energy efficiency of smart phone apps in the future.
Instead of simply powering the application itself, the researchers found that most of the popular free smart phone apps consume nearly 75 percent of their energy tracking the phone user’s geographical location, sending information about the user to subscribing advertisers and downloading various advertisements. The tracking process is used to provide information about the phone user’s geographical location so that the advertisements can be directly targeted and customized to the user’s area. When the group examined the free Angry Birds app, they found that the app spent about 75 percent of its power running advertisement modules in the software code, leaving only 25 percent of the energy to be used for actually playing the game.
Because power consumption has been a big problem for small and lightweight smart phone batteries even without the added drain of new apps, the Purdue research team created a new tool called Eprof, which is a smart phone energy profiler designed to analyze exactly how much energy the smart phone apps actually consume. A typical smart phone application can contain tens of thousands of lines of code, which are processed by the phone into many different components called subroutines, threads and processes. The new Eprof tool maps out the energy consumed by each component, and represents a new way to study smart phone energy consumption in the field without having to resort to expensive and complicated set-ups in a laboratory.
Because smart phone power loss is mainly caused by a combination of inefficient programs and software glitches, the Eprof tool was designed to show how much energy is being spent and where. In the last decade alone there have been around 1 million apps written for smart phones, but until now there was no s way for developers to see exactly how much energy the different components actually consume.
Although smart phone batteries are expected to last about a day before recharging, users have been complaining about batteries running out of juice in just a few hours with some of the new apps. Excessive power loss is most likely to occur with interactive apps such as games and other applications that use built-in phone gadgets like GPS, the camera, compass and proximity sensors. The advantage of the Eprof tool is that it shows how much energy is spent where, and makes it easy to see what should be changed to improve the overall energy efficiency.
The new findings in the Purdue team’s research will represent a real breakthrough if they can succeed in reducing the energy consumption of phone apps by as much as 20 to 65 percent overall. In the future, the team hopes to develop an “energy debugger” tool that will automatically pinpoint any flaws in the application software and fix them without requiring the intervention of a human software developer at all.