210 likes | 426 Views
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.
E N D
Fine-Grained Power Modeling for Smartphones Using System Call Tracing AbhinavPathak, Y. Charlie Hu Purdue University Ming Zhang, ParamvirBahl, 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 CTesterand 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.
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.
Fine-grained • Interval: 50ms
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.