Comparing Android Applications‘ Energy Consumption

On this site we present some profiling results, investigating and comparing the energy consumption of mobile applications providing similar services. These case studies demonstrate that providing energy labels as an additional comparing criterion for mobile applications is sensible. Furthermore, some results motivate the necessity to test applications w.r.t. their energy consumption making them more competitive to other applications from the same domain.

Idea

In the market of mobile applications for smart phone and tablets, millions of applications exist that compete against each other to be selected by users and installed on their devices. Although energy consumption is a highly important issue for devices having no continuous power supply, most of these applications are designed without considering inefficiency w.r.t. energy consumption. To guide users which applications behave better in contrast to other applications having similar services, we envision a market place providing energy labels as an additional application selection criterion (see this page for further details). To motivate our idea, we present a set of comparative case studies showing that similar applications can indeed vary in their energy consumption (e.g., due to advertisement banners or inefficient caching mechanisms).

Profiling Infrastructure

To profile applications‘ power consumption for certain use cases, we design a set of unit test cases representing the use cases as a set of UI events (clicking buttons, selecting fields, entering tests, …). We execute these test cases on a device under test (DUT) from a test server PC and log the start and stop events for each test run. In parallel we profile the DUT’s power consumption by bypassing its battery with a power meter device. Afterwards, we associate the profiled test events with the power rates to compute the test runs‘ (i.e., the use cases‘) energy consumption and execution time.

Email Client Case Study

This case study consists of a set of email clients.

Use Cases

The email case study consits of the following use cases: setup email account, drop email account, check for mails, read mails, write mails, forward and delete mails. Besides the setup and drop account use cases, each use case is executed with varying test data: a short mail with a text of 460 characters, a longer mail containing 920 characters, a mail with a picture attachment of 3.2MB, a mail with a note as an attachment (consisting of 110 characters), and a mail with a speech memo of 40 seconds speech as attachment. Where mails include attachments, the read mail use case includes the opening of the attachment. Besides, the read use case is executed twice during each iteration, to check, whether or not a second execution was more efficient due to caching of messages and/or attachments. These combinations of use cases and test data resulted in a test set of 33 test cases for each application. The composition and reading of mails has been implemented in a realistic way such as each character of a composed mail is entered separately simulating the mails creation via a keyboard. Furthermore, the time to display opened mails for reading depends on the length of their content.

The source code of all test cases for all tested email clients can be obtained from an SVN via this link.

Tested Applications

For our study we compared the following email clients: K-9 Mail and MailDroid.

Results

The Figure above shows the median energy consumption for all profiled use cases. A Kruskall-Wallis test led to rejected null hypotheses for all use cases leading to the conclusion that mail clients vary in their energy consumption for the same use cases. In general, K-9 Mail performed a bit faster than MailDroid (free and pro version). For fetching and opening mails K-9 Mail is a bit faster which is majorly caused by its easier user interface (UI) navigation (e.g., the first mail account is opened by default on start up and does not have to be selected manually). Considering the median energy consumption, MailDroid’s free version behaves much worse than K-9 Mail and MailDroid pro. All use cases show significantly higher energy consumption. As MailDroid pro does not have this additional energy consumption, we conclude that the loading of advertisement banners has a very bad influence on energy consumption due to additional network communication. This assumption matches with results from prior work (e.g., [1, 3]) and the observation that energy consumption increases more significantly for longer test cases, where further advertisement banners are downloaded and displayed. The energy consumption of K-9 Mail and MailDroid pro differs only marginally. K-9 Mail behaves a bit better for most use cases. However, these differences are only a few deci-Joules caused by its slightly shorter execution time for the use cases. The differences increase for the opening attachment use cases (due to MailDroid’s longer downloading time). Surprisingly, both applications behave differently when handling picture attachments. MailDroid requires more time and energy to fetch and open picture attachments, whereby K-9 Mail requires more time and energy
to send and forward such attachments.

Summing up, whereas MailDroid consumes much more energy due to advertisement, K-9 Mail and MailDroid pro behave rather similarly. However, K-9 Mail comes for free whereas MailDroid pro costs 15 Euros. Thus, where free versions of email apps contain advertisement, users should avoid their usage and use other freely available apps instead, saving up to 75% of the energy spent for emailing.

Web Browser Case Study

This case study consists of a set of  Internet browsers.

Use Cases

The Internet browsers case study consists of the following use cases: open a website, open an image, download a file, and performing a web search. As test websites we designed five dummy websites on a test web server, consisting of raw HTML, HTML and JavaScript, HTML and CSS, HTML with embedded images and HTML with embedded video. Besides, we tested three popular websites: Google.com, NY-Times.com and YouTube.com. All websites were opened with and without cleared browser cache. As test images we used two JPEGs (3.2MB/351KB) and two GIFs (4.3MB/330KB). As downloads we used two PDFs (1.5MB/233KB). The images and PDFs were also deployed on our test web server. Downloads and images have been opened two times (cached and uncached). For web search we used the default browser search engine by entering a keyword into the address field. As keyword we used the 2011’s most often used keyword for news search: ’Fukushima’. These use cases resulted in a test set of 30 test cases per AUT.

The source code of all test cases for all tested Internet browsers can be obtained from an SVN via this link.

Tested Applications

For our study we compared the following web Browsers: EasyBrowser, DroidSurfing, NineSky Browser.

Results

The figure above shows Fig. 2 shows the median energy consumption for all use cases and applications. A Kruskall-Wallis test led to rejected null hypotheses for all use cases except for the downloads of large images and PDFs. This lead to the conclusion that browsers vary in their energy consumption for the same use cases. The not measured differences for PDF and image downloads may be explained by the simplicity of the task to download a file which is probably implemented similarly for all tested browsers.

In general, the browsers behave similarly w.r.t. their execution times. A major outlier is the NineSky Browser that performs better for all use cases that include the loading of larges images. Considering their energy consumption, the browsers behave almost similarly for the specially designed web pages. Surprisingly, the Easy Browser and Droid Surfing behave better than the NineSky Browser, although both include advertisement which the NineSky Browser does not. However, for use cases with longer execution times (due to the increased number of loaded banners) this effect is compensated; which is the case for real web pages and large images. In general, the Easy Browser requires a bit less energy than Droid Surfing. The reason might be the difference in their polling strategies for new advertisement banners. The Easy Browser loads a banner once a web page is opened and then every sixty seconds. Droid Surfing in contrast, loads a banner on app start up and then every twenty seconds, which can lead up to three times the banner traffic of the Easy Browser.

Caching in Droid Surfing leads to reduced execution times for real pages (NY Times, YouTube) and large images. However, energy consumption reduces only marginally. In the NineSky Browser, caching can reduce the loading time for large images (as it is the case for the tested large GIF file), coming together with reduce energy consumption. However, for the other tested images, no reductions of execution time and energy consumption are observable. For PDF downloads, execution times and energy consumption of all tested browsers differ only marginally.

Summing up, the energy consumption of mobile browsers varies while loading the same pages and images. Advertisement banners can increase the browsers’ energy consumption, however, other implementations can behave even worse although excluding advertisement.

Publications

Below a list of publications related to this topic:

  1. C. Wilke, S. Richly, S. Götz, C. Piechnick, G. Püschel, and U. Aßmannn.
    Comparing Mobile Applications‘ Energy Consumption.
    To appear in SEGC – Software Engineering Aspects of Green Computing Track at the 28th ACM Symposium on Applied Computing (SAC2013). ACM, 2013.
  2. Claas Wilke, Sebastian Richly, Georg Püschel, Christian Piechnick, Sebastian Götz and Uwe Aßmannn.
    Energy Labels for Mobile Applications
    In Proceedings of First Workshop for the Development of Energy-aware Software (EEbS 2012), Lecture Notes in Informatics, Vol. 208, Gesellschaft für Informatik, Bonn, 2012, pp. 412-425.
  3. Claas Wilke.
    Energieverbrauchsermittlung von Android-Applikationen
    (PDF complete proceedings, Slides)
    In: Innovationsforum open4INNOVATION2012 regional kooperativ-global innovativ Beiträge zum Fachforum, Technical Report TUD-FI12-05-Mai 2012, Technische Universität Dresden, pp. 70-74, 2012.

Comments are closed.