arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1901.01062cs.SE
收藏

检测和诊断移动应用程序的能源问题

Detecting and Diagnosing Energy Issues for Mobile Applications

Xueliang Li, Yuming Yang, Yepang liu, John P. Gallagher, Kaishun Wu

摘要:

能源效率是判断移动应用质量的重要标准,但我们随机抽样的应用中有三分之一存在能源问题,这些问题会迅速耗尽电池电量。为了了解这些问题,我们对27个维护良好的应用程序(如Chrome和Firefox)进行了实证研究,这些应用程序的问题跟踪系统可以公开访问。我们的研究表明,能源问题的主要根源包括不必要的工作量和过于频繁的操作。令人惊讶的是,这些问题超出了当前技术在能量问题检测上的应用。我们还发现,20.6%的能源问题只能在特定的环境下表现出来,例如网络性能差,但这些环境又被目前的技术所忽视。因此,我们提出了一个新的测试框架,用于检测现实世界中的应用程序中的能源问题。我们的框架检查具有精心设计的输入序列和运行时上下文的应用程序。为了确定上述根本原因,我们采用了机器学习算法来聚类工作负载,并进一步评估其必要性。对于被具体上下文掩盖的问题,我们精心设置了几个执行上下文来进行定位。更重要的是,我们开发了先进的技术,例如预先设计潜在能源过度使用的输入序列和动态调整测试,以实现检测能源问题的高效率。一个大规模的评估表明,在我们的测试中检测到的91.6%的问题是以前未知的开发人员。平均而言,这些问题使应用程序的能源成本增加了一倍。此外,我们的测试实现了低数量的假阳性。最后,我们将展示我们的测试报告如何帮助开发人员解决问题。

英文摘要:

Energy efficiency is an important criterion to judge the quality of mobile apps, but one third of our randomly sampled apps suffer from energy issues that can quickly drain battery power. To understand these issues, we conducted an empirical study on 27 well-maintained apps such as Chrome and Firefox, whose issue tracking systems are publicly accessible. Our study revealed that the main root causes of energy issues include unnecessary workload and excessively frequent operations. Surprisingly, these issues are beyond the application of present technology on energy issue detection. We also found that 20.6% of energy issues can only manifest themselves under specific contexts such as poor network performance, but such contexts are again neglected by present technology. Therefore, we proposed a novel testing framework for detecting energy issues in real-world apps. Our framework examines apps with well-designed input sequences and runtime contexts. To identify the root causes mentioned above, we employed a machine learning algorithm to cluster the workloads and further evaluate their necessity. For the issues concealed by the specific contexts, we carefully set up several execution contexts to pinpoint them. More importantly, we developed leading edge technology, e.g. pre-designing input sequences with potential energy overuse and tuning tests on-the-fly, to achieve high efficacy in detecting energy issues. A large-scale evaluation shows that 91.6% issues detected in our test were previously unknown to developers. On average, these issues double the energy costs of the apps. Furthermore, our test achieves a low number of false positives. Finally, we show how our test reports can help developers fix the issues.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑