Mantis: Efficient Predictions of Execution Time, Energy Usage, Memory Usage and Network Usage on Smart Mobile Devices
Venue
IEEE Transactions on Mobile Computing, vol. 14 (2015), pp. 2059-2072
Publication Year
2015
Authors
Yongin Kwon, Sangmin Lee, Hayoon Yi, Donghyun Kwon, Seungjun Yang, Byung-Gon Chun, Ling Huang, Petros Maniatis, Mayur Naik, Yunheung Paek
BibTeX
Abstract
We present Mantis, a framework for predicting the computational resource
consumption (CRC) of Android applications on given inputs accurately, and
efficiently. A key insight underlying Mantis is that program codes often contain
features that correlate with performance and these features can be automatically
computed efficiently. Mantis synergistically combines techniques from program
analysis and machine learning. It constructs concise CRC models by choosing from
many program execution features only a handful that are most correlated with the
program’s CRC metric yet can be evaluated efficiently from the program’s input. We
apply program slicing to reduce evaluation time of a feature and automatically
generate executable code snippets for efficiently evaluating features. Our
evaluation shows that Mantis predicts four CRC metrics of seven Android apps with
estimation error in the range of 0-11.1 percent by executing predictor code
spending at most 1.3 percent of their execution time on Galaxy Nexus.
