Presentation on theme: "Fine-Grained Power Modeling for Smartphones Using System Call Tracing Abhinav Pathak, Y. Charlie Hu Purdue University Ming Zhang, Paramvir Bahl, Yi-Min."— Presentation transcript:
Fine-Grained Power Modeling for Smartphones Using System Call Tracing Abhinav Pathak, Y. Charlie Hu Purdue University Ming Zhang, Paramvir Bahl, Yi-Min Wang Microsoft Research 2011 EuroSys
Motivation Accurate, fine-grained online energy estimation of mobile devices. ◦ Understanding and debugging the energy consumption of mobile applications. Current utilization-based power modeling is insufficient for modeling the power consumption of mobile devices.
Utilization-Based Power Modeling The power state of a device is correlated to the utilization of its hardware components. ◦ Ex: CPU utilization 0%=> 150W CPU utilization 50%=> 250W CPU utilization 90%=> 340W This model can be used to perform online estimation of power consumption. ◦ Collects the utilization of each components and feeds them into the model.
New Challenges Several components have tail power states. ◦ Tail power: a component stays at high power state for a period of time after active I/O activities. System calls that do not imply utilization can change power states ◦ Could be due to power optimizations programmed in device drivers.
New Challenges(cont.) Several components do not have quantitative utilization. ◦ “Exotic” components such as GPS and camera.
System-Call-Based Power Modeling Based on the following observations: ◦ System calls is the only way an app can access hardware (I/O) components. ◦ System calls can trigger power state transition. ◦ System calls that turn on/off “exotic” components trigger power state change immediately. ◦ Using system calls as triggers naturally suggests using a FSM to model state transitions. ◦ System calls can be easily related back to the calling subroutine.
System-Call-Based Power Modeling(Cont.) Model the power state of a device using FSM. ◦ Each state of the FSM is a power state of the device. Can be easily annotated with timing and workload of recent events. ◦ The state transition is triggered by system call.
Construction Step I Modeling single system call power consumption
Construction Step II Modeling Multiple System Calls(to the same component) ◦ Concurrent system calls The second system call is invoked before the component is out of the productive or tail state due to the first system call. ◦ Power states of a component Take the union of all power states discovered by modeling individual system calls.
Construction Step II(Cont.) ◦ Modeling state transition A system call arrives after the previous one is out of its productive power state. => superimposing the FSM of the second on top of the first. A system call arrives while the previous one is still in its productive power state. => Workload-based system call(ex: read/write) workload_first => workload_first + workload_second Initialization-based system call(ex: open) Productive state => Tail state => Superimposing
Construction Step III Modeling Multiple Components ◦ Android The total power consumption is the summation of those of individual components when active in isolation. ◦ Windows Phone Tail states of different components interfere with each other. Try out all possible combinations of the sets of conditions, each set for driving one component into all possible states, and measure the corresponding total power consumption.
CTester Applications A testing benchmark suite. ◦ An application for each component carefully designed to exercise all the relevant system calls. ◦ A wrapper application that invokes individual applications at predetermined timing. Run CTester and measure the power dissipated through an external power meter.
Implementation Tracing System Calls ◦ Windows Mobile 6.5 with Windows CE 5.2 kernel ◦ Android 2.2 running Linux Kernel 2.6.34 Flash Customized kernel Images
Hardware Platform Phone is connected to a power supply with power monitor. Power monitor samples every 200 ms. NameHandset HTC-CPU (MHz)OS (kernel)BasePower Magic 528Android 2.0 (Linux 2.6.34) 160mA Touch 528WM6.1 (CE5.2)250mA Tytn2Tytn II400WM6.1 (CE5.2)130mA
Energy Consumption Estimation Compare the accuracy of fine-grained and whole-application energy consumption estimation. ◦ System-call-based ◦ Utilization-based LR model ◦ Only consider LCD, CPU, sacard, and wifi NIC.
Conclusion This paper presents the design and implementation of a system-call-based power modeling approach. The experimental results on Android and Windows Mobile using a diverse set of applications show that the new model drastically improves the accuracy of fine- grained energy estimation as well as whole application energy estimation.