Fine-Grained Power Modeling for Smartphones Using System Call Tracing



Similar documents
Fine-Grained Power Modeling for Smartphones Using System Call Tracing

AppScope: Application Energy Metering Framework for Android Smartphones using Kernel Activity Monitoring

ELEC 377. Operating Systems. Week 1 Class 3

MONITORING PERFORMANCE IN WINDOWS 7

CSC 2405: Computer Systems II

TRACE PERFORMANCE TESTING APPROACH. Overview. Approach. Flow. Attributes

Presentation of Diagnosing performance overheads in the Xen virtual machine environment

STeP-IN SUMMIT June 18 21, 2013 at Bangalore, INDIA. Enhancing Performance Test Strategy for Mobile Applications

Understand and Build Android Programming Environment. Presented by: Che-Wei Chang

Audit & Tune Deliverables

Example of Standard API

Windows 2003 Performance Monitor. System Monitor. Adding a counter

ENERGY SAVING SYSTEM FOR ANDROID SMARTPHONE APPLICATION DEVELOPMENT

Full and Para Virtualization

IBM Tivoli Composite Application Manager for Microsoft Applications: Microsoft Hyper-V Server Agent Version Fix Pack 2.

Operating System Impact on SMT Architecture

Delivering Quality in Software Performance and Scalability Testing

Rackspace Cloud Databases and Container-based Virtualization

Empowering Developers to Estimate App Energy Consumption. Radhika Mittal, UC Berkeley Aman Kansal & Ranveer Chandra, Microsoft Research

find model parameters, to validate models, and to develop inputs for models. c 1994 Raj Jain 7.1

Basic Trends of Modern Software Development

Benchmarking Hadoop & HBase on Violin

Rodrigo Fernandes de Mello, Evgueni Dodonov, José Augusto Andrade Filho

Architecture of Hitachi SR-8000

COS 318: Operating Systems

Improved metrics collection and correlation for the CERN cloud storage test framework

APPENDIX 1 USER LEVEL IMPLEMENTATION OF PPATPAN IN LINUX SYSTEM

Windows Server 2008 R2 Hyper V. Public FAQ

Smart Shopping- An Android Based Shopping Application

Next Generation Operating Systems

KVM: A Hypervisor for All Seasons. Avi Kivity avi@qumranet.com

Lecture 17: Mobile Computing Platforms: Android. Mythili Vutukuru CS 653 Spring 2014 March 24, Monday

What is Eating Up Battery Life On My SmartPhone: A Case Study

Charith Pereral, Arkady Zaslavsky, Peter Christen, Ali Salehi and Dimitrios Georgakopoulos (IEEE 2012) Presented By- Anusha Sekar

Architecture (SOSP 2011) 11/11/2011 Minsung Jang

How Solace Message Routers Reduce the Cost of IT Infrastructure

Understand Performance Monitoring

Evaluating Impact of Storage on Smartphone Energy Efficiency

Android Virtualization from Sierraware. Simply Secure

IOS110. Virtualization 5/27/2014 1

Network Monitoring Comparison

SIDN Server Measurements

Virtualization. Explain how today s virtualization movement is actually a reinvention

Application of Android OS as Real-time Control Platform**

Energy Efficient MapReduce

Process Description and Control william stallings, maurizio pizzonia - sistemi operativi

Energy Performance and Accounting in Mobile Operating Systems

CS423 Spring 2015 MP4: Dynamic Load Balancer Due April 27 th at 9:00 am 2015

Linux Performance Optimizations for Big Data Environments

Android on i.mx Applications Processors

IBM Tivoli Monitoring Version 6.3 Fix Pack 2. Infrastructure Management Dashboards for Servers Reference

opensm2 Enterprise Performance Monitoring December 2010 Copyright 2010 Fujitsu Technology Solutions

Web Application s Performance Testing

International Engineering Journal For Research & Development

COS 318: Operating Systems. Virtual Machine Monitors

LCMON Network Traffic Analysis

Intel DPDK Boosts Server Appliance Performance White Paper

Performance monitoring at CERN openlab. July 20 th 2012 Andrzej Nowak, CERN openlab

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Chapter 3 Operating-System Structures

Chapter 14 Virtual Machines

Proposal for Virtual Private Server Provisioning

Research and Design of Universal and Open Software Development Platform for Digital Home

The Key Technology Research of Virtual Laboratory based On Cloud Computing Ling Zhang

HP OO 10.X - SiteScope Monitoring Templates

Emerging IT and Energy Star PC Specification Version 4.0: Opportunities and Risks. ITI/EPA Energy Star Workshop June 21, 2005 Donna Sadowy, AMD

Android Architecture. Alexandra Harrison & Jake Saxton

SEACW DELIVERABLE D.1.6

Android Operating System

McAfee Enterprise Mobility Management Performance and Scalability Guide

Group Based Load Balancing Algorithm in Cloud Computing Virtualization

OpenMosix Presented by Dr. Moshe Bar and MAASK [01]

1. Computer System Structure and Components

1 INTRODUCTION 2 APPLICATION PROFILING OVERVIEW

Hardware Performance Optimization and Tuning. Presenter: Tom Arakelian Assistant: Guy Ingalls

Advances in Virtualization In Support of In-Memory Big Data Applications

theguard! ApplicationManager System Windows Data Collector

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone

Increasing Flash Throughput for Big Data Applications (Data Management Track)

Real time vehicle tracking and driver behaviour monitoring using cellular handset based accelerometer and GPS data

Operating System for the K computer

PRODUCTIVITY ESTIMATION OF UNIX OPERATING SYSTEM

Overlapping Data Transfer With Application Execution on Clusters

Virtual Machine Monitors. Dr. Marc E. Fiuczynski Research Scholar Princeton University

Power Efficiency Comparison: Cisco UCS 5108 Blade Server Chassis and IBM FlexSystem Enterprise Chassis

Debugging A MotoHawk Application using the Application Monitor

OPERATING SYSTEM SERVICES

Process Scheduling CS 241. February 24, Copyright University of Illinois CS 241 Staff

Mobile App Testing Guide. Basics of Mobile App Testing

Improving Job Scheduling by using Machine Learning & Yet an another SLURM simulator. David Glesser, Yiannis Georgiou (BULL) Denis Trystram(LIG)

Reminders. Lab opens from today. Many students want to use the extra I/O pins on

Agenda. Context. System Power Management Issues. Power Capping Overview. Power capping participants. Recommendations

Virtual Machines. COMP 3361: Operating Systems I Winter

Virtualization in Linux KVM + QEMU

Outline. Introduction. Multiprocessor Systems on Chip. A MPSoC Example: Nexperia DVP. A New Paradigm: Network on Chip

ARM Processors and the Internet of Things. Joseph Yiu Senior Embedded Technology Specialist, ARM

Microkernels, virtualization, exokernels. Tutorial 1 CSC469

White Paper. Real-time Capabilities for Linux SGI REACT Real-Time for Linux

Eloquence Training What s new in Eloquence B.08.00

Basics in Energy Information (& Communication) Systems Virtualization / Virtual Machines

Transcription:

Power Modeling for Smartphones Based on paper and presentation by: Abhinav Pathak, Y. Charlie Hu, Ming Zhang Paramvir Bahl, Yi-Min Wang Damian Rodziewicz

Smartphone Capabilities

Smartphone Capabilities Camera

Smartphone Capabilities Camera GPS

Smartphone Capabilities Camera Wi-Fi GPS

Smartphone Capabilities Camera GPS Wi-Fi Games and applications

Smartphone Capabilities Camera GPS Wi-Fi Games and applications

Smartphone Constraints Energy one of the most critical issues in smartphones. Smartphone capabilities are growing rapidly. Battery capacity has only doubled through 10 years. "According to unpublished research by the Boston Consulting Group, the amount of energy that a battery can store (its energy density) is growing by 8% a year. Mobile-device power consumption, meanwhile, is growing at more than three times this rate, as backlit colour screens, high-speed wireless networks and more powerful microprocessors draw ever-larger amounts of power."

Key issue How can we measure energy consumption in our applications? Power meter Online power models for mobile devices Utilization-based power model System call tracing power model

Measuring Energy Consumption Power meter High cost (~700$) Requires performing surgery on your phone Only whole energy usage Stationary cannot move with Very accurate (every 200 ms exact power usage)

Online power model Źródło: http://eurosys2011.cs.uni-salzburg.at/pdf/eurosys2011-pathak-slides.pdf

Utilization-based approach State-of-art creating model Energy usage Ep = Energy used by 1 second of processor En = Energy used by 1 packet of data sent Ed = Energy used by writing/reading 1 byte same for GPS, camera, and so on...

Utilization-based approach State-of-art predicting Read data every second (something like proc in Linux): %Up = % of used Processor Nn = number of packets sent Nd = number of bytes read / written Result = %Up * Ep + Nn * En + Nd * En

Utilization-based approach State-of-art wrong assumptions Active utilization is the only trigger of power state change File open/close, socket open/close also consume energy Several components have tail energy states (even few seconds) Linear estimation Sending 100 packets does not cost 2 as much energy as sending 50 Quantitative utilization Cannot measure energy consumption of camera / GPS The interval can be too large to collect data, or the sampling can become too costly, if done at fine granularity.

Utilization-based approach Examples of power usage Źródło: http://eurosys2011.cs.uni-salzburg.at/pdf/eurosys2011-pathak.pdf

Observations System calls provide the only means via which applications gain access to the hardware (I/O) components. Names and parameters give clear indication of components and level of utilization. (Encapsulation of utilization-based approach) System call can be naturally related back to the calling subroutine and the hosting thread and the process.

Problems Tail energy states How much do they consume? How long do they last? Device drivers are closed source (no source / no information given). Power consumption does not add linearly. Energy does not scale linearly.

Problems non linear additivity

Problems non linear scalability

Idea Use system calls as triggers in power modelling. Reverse engineer power logic in device drivers. Use Finite-State-Machine (FSM) to model the power states and transitions between them in components. Nodes: Power States (Either productive state or tail state) Edges: Transitions between states Can be system call, timeout, other condition. We assume that these drivers implement very simple logic We use Linear Regression to connect workload with power usage in states.

Creating FSM Create an FSM for one system call. Model all system calls for one component. Shuffle the system calls in a C program, look for new power states. Model one huge FSM for the phone from the components.

Finite State Machine step 1

Creating FSM step 2 - Wi-Fi

Creating FSM step 3

Combinatorial issue Usualy one component has about 2 productive states and 1 tail state. It is done manually at this time. Applications are run, FSM models are created. States are binded together manually. Soon the process will be automated.

Evaluation CPU, Disk, Wi-Fi

Evaluation Entire Phones

Implementation Tracing system calls in whole phone, to predict energy usage. Windows Mobile 6 CeLog logging mechanism for CPU, memory, TLB, interrupt. Wrappers that log system calls in libraries. Thunking system call made to invalid address prefetch abort trap. Android Three levels kernel, Dalvik Virtual Machine, framework. SystemTap logging system calls in kernel. Logging library from Android to log framework calls.

Implementation - Eprofiler Currently being worked on. Mannualy annotating system calls in the source code to log the entry and exit points.

Estimation

Estimation

What is next? Implementing eproof Releasing modified Android image to public Releasing tools for Android to predict energy usage Detailed classification of power behaviour of different OSes and handsets

Thank You