Energy Debugging in Smartphones

Despite the incredible market penetration of smartphones and exponential growth of the app market, utility of smartphones has been and will remain severely limited by the battery life. As such, energy has increasingly become the scarcest resource on smartphones that critically affects user experience. In this talk, I will start with a first study that characterizes a new class of bugs faced by millions of smartphones, called energy bugs, or ebugs, broadly defined as an error in the system (apps, OS, hardware, firmware, or external conditions) that results in unexpected smartphone battery drainage, and leads to significant user frustrations.

As a first step towards taming ebugs, we built the first fine-grained energy profiler, EProf, that performs energy accounting and hence answers the very question “where was the energy spent in the app?” at the per-routine, per-thread, and per-process granularity. Building EProf in turn requires a fine-grained, online power model that we have developed which captures the unique asynchronous power behavior of modern smartphones using a system-call-based Finite-State-Machine model. Using EProf, we have dissected the energy drain of popular apps in Android Market (eg AngryBirds) and discovered ebugs in popular apps like Facebook.

While essential, Eprof only provides a semi-automatic tool for energy debugging, as the developer has to be involved in the iterative profiling/debugging process. The holy grail in energy debugging on smartphones is to develop fully automatic debugging techniques and tools that detect ebugs at compile time, runtime or post processing time, which can draw synergies with different areas of computer science including architecture, compilers, PL, HCI, etc. I will present one such automatic ebug detection technique based on static compiler analysis for detecting “no-sleep” energy bugs, the most notorious category of energy bugs found in smartphone apps.

Speaker Details

Abhinav Pathak is a PhD candidate at Purdue University working with Prof. Y. Charlie Hu. He earned his bachelors from IIT Kanpur. His research interests lie broadly in the systems and networking area with a focus on modern-day mobile devices. He is a recipient of Intel Fellowship for 2011-2012 for his work in Energy Debugging in Smartphones.

Date:
Speakers:
Abhinav Pathak
Affiliation:
Purdue University
    • Portrait of Jeff Running

      Jeff Running