Mobile devices are a pervasive computing platform with a rich set of programming interfaces for third-party developers to write software applications. However, mobile application programming is challenging. Software developers need to consider user interactions, changes in the conditions in which the mobile application is running, and carefully monitor resources on the mobile device. As a result, many mobile applications have software errors (bugs) that waste energy and cause the battery to be discharged quickly. The goal of this project is to provide a comprehensive solution to reduce energy waste caused by software bugs and enable application developers to create energy-efficient apps.

Specifically, the project studies how real-world applications with energy bugs behave by collecting their runtime information and characterizing the energy misbehavior. This project then explores a utilitarian mobile operating system design with a new abstraction lease, to manage mobile resources efficiently even when applications have energy bugs. To facilitate application developers to leverage the new operating system design, this project further designs new interfaces for developers to define custom utility, a library to perform online optimization on utility and energy efficiency at application runtime, and an energy profiler to optimize low-utility code.

Mobile applications today provide services integral to our daily life. Building energy-aware applications is ever more important. This project can effectively improve our understanding of application runtime behavior, significantly reduce the impact of potential energy bugs, and help application developers more easily build energy-efficient applications. This project will also promote teaching, outreach, and training by exposing students to the real-world challenges and design principles in building energy-aware applications.

The project outcomes include paper publications, technical reports, presentations, course material, datasets, and software. The outcomes will be made available for download at www.cs.jhu.edu/~huang and be maintained for at least five years beyond the completion of the project. The source code of the new mobile operating system design will also be released and available on GitHub.

This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Network Systems (CNS)
Type
Standard Grant (Standard)
Application #
1910133
Program Officer
Matt Mutka
Project Start
Project End
Budget Start
2019-10-01
Budget End
2022-09-30
Support Year
Fiscal Year
2019
Total Cost
$500,000
Indirect Cost
Name
Johns Hopkins University
Department
Type
DUNS #
City
Baltimore
State
MD
Country
United States
Zip Code
21218