Published July 12, 2023 | Version 0.0.1
Journal article Open

A large-scale empirical study on mobile performance: Energy, Run-time and Memory

  • 1. University of Minho

Description

Software performance concerns have been attracting research interests at an increasing rate, especially regarding energy performance in non-wired computing devices. In the context of mobile devices, several research works have been devoted to assessing the performance of software and its underlying code. One important contribution of such research are sets of programming guidelines aiming at identifying efficient and inefficient programming practices, and consequently to steer software developers to write performance-friendly code. The most common programming guidelines resulting from these studies are the labeling of APIs and coding practices as efficient or inefficient in terms of performance.

 

Despite recent efforts in this direction, it is still almost unfeasible to obtain universal and up-to-date knowledge regarding a software’s performance. Namely regarding energy performance, where there has been growing interest in optimizing software energy consumption due to the power restrictions of such devices. There are still many difficulties reported by the community on measuring performance, namely in large-scale validation and replication.

In this paper,  we analyze the execution of a diversified corpus of applications of significant magnitude. We analyze the source-code performance of 1322 versions of 215 different Android applications, dynamically executed with over than 27900 tested scenarios. Our empirical analysis allowed to observe that certain coding practices previously identified as energy-greedy only replicate such behavior in specific contexts and have different impacts across different performance indicators. We also demonstrate that there are significant differences in terms of performance between the most used libraries suited for implementing common programming tasks, such as HTTP communication, JSON manipulation, image loading/rendering, among others, providing a set of recommendations to select the most efficient library for each performance indicator. Finally, we present a set of guidelines that can be used by practitioners to replicate energy studies and build more efficient mobile software.

 

Files

emse_full_results.zip

Files (2.5 GB)

Name Size Download all
md5:9e8c242aa6858657851c45772813bbe2
24.1 kB Download
md5:d37d3fe22852a2944eb04e896aea1979
31.5 kB Download
md5:beccaf084d304e57f416cd69681775a3
22.7 kB Download
md5:ad9acf46d0532824a248cc18c3328746
6.3 kB Download
md5:014ce469c37785c430280b9432da940f
37.5 kB Download
md5:37981ecc3bcb1bd04875c7959dc42381
20.2 kB Download
md5:49cd2ec4677b6b31c1b7d300e6bb9448
20.1 kB Download
md5:4fa71e8e2f07f224dbf30e001cd0ac86
2.3 kB Download
md5:2939652480917b111b8b1b01ac553bec
63.1 kB Download
md5:95bc036efed38a44192db4374a7f28e1
55.1 kB Download
md5:0d96570d68ba2168dc2ad9f49a914764
7.3 kB Download
md5:b5c74270f33bba571c9a508e8e808876
2.5 GB Preview Download
md5:b7d877cd8fb3ab02ffa9b53ab7b42e9f
5.7 kB Preview Download
md5:7e2603ec4b12045fc75303c7b93755e5
6.9 kB Preview Download
md5:be9dbf84b7238cd68aab02a5a16ceb0a
8.5 kB Preview Download

Additional details

Funding

SFRH/BD/146624/2019 – Green Software in the Large: Energy-driven Techniques, Tools and Repositories SFRH/BD/146624/2019
Fundação para a Ciência e Tecnologia