Google Research

Mantis: Efficient Predictions of Execution Time, Energy Usage, Memory Usage and Network Usage on Smart Mobile Devices

  • Yongin Kwon
  • Sangmin Lee
  • Hayoon Yi
  • Donghyun Kwon
  • Seungjun Yang
  • Byung-Gon Chun
  • Ling Huang
  • Petros Maniatis
  • Mayur Naik
  • Yunheung Paek
IEEE Transactions on Mobile Computing, vol. 14 (2015), pp. 2059-2072

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.

Learn more about how we do research

We maintain a portfolio of research projects, providing individuals and teams the freedom to emphasize specific types of work