A large-scale empirical study on mobile performance: Energy, Run-time and Memory
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