Pavlos Petoumenos, Hugh Leather, Björn Franke

Slides:



Advertisements
Similar presentations
Display Power Management Policies in Practice Stephen P. Tarzia Peter A. Dinda Robert P. Dick Gokhan Memik Presented by: Andrew Hahn.
Advertisements

Game Programming Patterns Game Loop
Computer Organization Lab 1 Soufiane berouel. Formulas to Remember CPU Time = CPU Clock Cycles x Clock Cycle Time CPU Clock Cycles = Instruction Count.
Resource Management §A resource can be a logical, such as a shared file, or physical, such as a CPU (a node of the distributed system). One of the functions.
Energy-Efficient System Virtualization for Mobile and Embedded Systems Final Review 2014/01/21.
Practice Quiz Question
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 19 Scheduling IV.
Paul D. Bryan, Jason A. Poovey, Jesse G. Beu, Thomas M. Conte Georgia Institute of Technology.
Dr. Alexandra Fedorova August 2007 Introduction to Systems Research at SFU.
Chapter 4 Assessing and Understanding Performance
Computer Organization and Architecture
Lecture 3: Computer Performance
ThinkAir: Dynamic Resource Allocation and Parallel Execution in Cloud for Mobile Code Offloading Sokol Kosta, Pan Hui Deutsche Telekom Labs, Berlin, Germany.
Adaptive Video Coding to Reduce Energy on General Purpose Processors Daniel Grobe Sachs, Sarita Adve, Douglas L. Jones University of Illinois at Urbana-Champaign.
COMP 4923 Green IT audit for Registrar’s Office John, Michael, Sarah.
Alex Shye, Berkin Ozisikyilmaz, Arindam Mallik, Gokhan Memik, Peter A. Dinda, Robert P. Dick, and Alok N. Choudhary Northwestern University, EECS International.
Uncovering the Multicore Processor Bottlenecks Server Design Summit Shay Gal-On Director of Technology, EEMBC.
ReCapture A Pattern-aware Benchmark Tool for Smartphones.
Clone-Cloud. Motivation With the increasing use of mobile devices, mobile applications with richer functionalities are becoming ubiquitous But mobile.
Active Sampling for Accelerated Learning of Performance Models Piyush Shivam, Shivnath Babu, Jeff Chase Duke University.
GISt lunch meeting OTB Research Institute for Housing, Urban and Mobility Studies Writing a DBMS buyers guide Wim de Haas Wilko Quak Based.
An Energy-efficient Task Scheduler for Multi-core Platforms with per-core DVFS Based on Task Characteristics Ching-Chi Lin Institute of Information Science,
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Ensieea Rizwani An energy-efficient management mechanism for large-scale server clusters By: Zhenghua Xue, Dong, Ma, Fan, Mei 1.
Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech.
Toward Reliable and Efficient Reporting in Wireless Sensor Networks Authors: Fatma Bouabdallah Nizar Bouabdallah Raouf Boutaba.
E-MOS: Efficient Energy Management Policies in Operating Systems
1 Performance Impact of Resource Provisioning on Workflows Gurmeet Singh, Carl Kesselman and Ewa Deelman Information Science Institute University of Southern.
CSE 340 Computer Architecture Summer 2016 Understanding Performance.
Lecture 3. Performance Prof. Taeweon Suh Computer Science & Engineering Korea University COSE222, COMP212, CYDF210 Computer Architecture.
Online Parameter Optimization for Elastic Data Stream Processing Thomas Heinze, Lars Roediger, Yuanzhen Ji, Zbigniew Jerzak (SAP SE) Andreas Meister (University.
Input and Output Optimization in Linux for Appropriate Resource Allocation and Management James Avery King.
Bishnu Priya Nanda , Tata Consultancy Services Ltd.
OPERATING SYSTEMS CS 3502 Fall 2017
Abstract In this paper, the k-coverage problem is formulated as a decision problem, whose goal is to determine whether every point in the service area.
TrueTime.
Week 2 - Monday CS361.
ECE 4100/6100 Advanced Computer Architecture Lecture 1 Performance
Swapping Segmented paging allows us to have non-contiguous allocations
Introduction to Networking
Datalogging with video
Chapter 6: CPU Scheduling
A Step-By-Step Tutorial for the Discipline Data Reporting Tool The Delaware Positive Behavior Support Project Slide 1:   Welcome to.
A Step-By-Step Tutorial for the Discipline Data Reporting Tool The Delaware Positive Behavior Support Project Slide 1:   Welcome to.
Department of Computer Science University of California, Santa Barbara
CPU Scheduling G.Anuradha
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Learning and Leveraging the Relationship between Architecture-Level Measurements and Individual User Satisfaction Alex Shye, Berkin Ozisikyilmaz, Arindam.
Evaluating Asymmetric Multiprocessing for Mobile Applications
Objective of This Course
Christophe Dubach, Timothy M. Jones and Michael F.P. O’Boyle
Functions of an operating system
Chapter 6: CPU Scheduling
CPU SCHEDULING.
CS703 – Advanced Operating Systems
Scheduling of Regular Tasks in Linux
CPU Scheduling David Ferry CSCI 3500 – Operating Systems
AT&T Developer Services Application Resource Optimizer (ARO)
Performance And Scalability In Oracle9i And SQL Server 2000
Chapter 6: CPU Scheduling
Virtual Memory: Working Sets
Database Systems (資料庫系統)
Module 5: CPU Scheduling
Progress Report 2012/12/20.
Chapter 6: CPU Scheduling
IIS Progress Report 2016/01/18.
Module 5: CPU Scheduling
Scheduling of Regular Tasks in Linux
CPU Scheduling David Ferry CSCI 3500 – Operating Systems
Presentation transcript:

Pavlos Petoumenos, Hugh Leather, Björn Franke Compiler and Architecture Design Group Institute for Computing Systems Architecture University of Edinburgh, United Kingdom Measuring QoE of Interactive Workloads and Characterising Frequency Governors on Mobile Devices IISWC 2014 Volker Seeker Pavlos Petoumenos, Hugh Leather, Björn Franke

How can I measure satisfaction? Problem Statement heterogeneous workload interactive workload battery constraints ... Energy Consumption Execution Delay Trade-Off Responsive Energy Efficient How can I measure satisfaction? When you as a system designer work today’s modern mobile devices, you need to deal with things such as ... So no matter which part of the system you are currently working on, maybe memory management policy, scheduling policy, network protocols, ... You want the system to be responsive and energy efficient Contradicting goals, Tradeoff between responsiveness and energy efficiency The final metric you want to optimise your system for: user satisfaction When I chose a point in the graph, how do I know if the user is happy with what I picked? Usually this is more closely related to responsiveness, since the user gets a more direct feedback here. How can I measure if the user is satisfied with the system?? Satisfied User Volker Seeker

Workload Scenario 0.3 GHz 1.2 GHz 2.2 GHz Frequency Governor Consider the following scenario with the frequency governor as system aspect under investigation Three times the same workload with different frequencies  You can see differences in the response time Two on the right are similar 0.3 GHz 1.2 GHz 2.2 GHz Volker Seeker

Questionaires are cost intensive Workload Scenario Frequency Governor too slow sweet spot wasting energy How do we find the sweet spot? Consider the User’s Perspective! How do we find the sweet spot? In our work we say: Look with the user’s eyes. See what the user cares about and then make a decision.  Not only fixed but also at the right time! When does the user care about responsiveness and when does he not? Only then I can say that I have done a good job in tweaking the system.  Classic approach is using questionaires Questionaires are cost intensive 0.3 GHz 1.2 GHz 2.2 GHz Volker Seeker

What we need! Rate Trade-Off considering User Satisfaction Interactive Mobile Workload Distance to sweet spot Rate Trade-Off considering User Satisfaction What would be great to have is a system that takes an interactive mobile workload Analyses it considering the user’s perspective And rates the trade-off that we made when tweaking the current part of the system we are working And tells us the distance to the sweet spot Where the user is happiest with our chosen energy efficiency and execution delay for this workload Then we already have a very good idea Volker Seeker

What Does The User Care About? Timespan between user input and user feels input has been serviced Interaction Lag Also Jank lags but not in this study Click Calendar Calendar Loaded Volker Seeker

Not possible with current mobile benchmarks! Research Goals Interactive Mobile Workload Distance to sweet spot Rate Trade-Off considering User Satisfaction Methodology must ... ... deal with interactive workloads ... execute repeatable workloads ... execute workloads automatically ... identify interaction lags ... automatically rate user satisfaction Not possible with current mobile benchmarks! What we want is a methodology that tells us if we have done a good job in finding this sweet spot for a certain system aspect. Providing a method to rate the response time and energy efficiency of an interactive system considering user perception Volker Seeker

Executing Mobile Workloads Record Input Event Trace Replay Automatic Realistic Interactive Repeatable We do not run a set of automated apps or a scripted interactions We directly record the input, a user is issuing and automatically replay it with the exact same timing from the exact same origin point That way we make sure that we have a realistic and interactive workload, that we can replay repeatedly in its original environment as close as possible to the original execution Volker Seeker

Automatic Workload Execution Volker Seeker

Research Goals Rate Trade-Off considering User Satisfaction Interactive Mobile Workload Distance to sweet spot Rate Trade-Off considering User Satisfaction Methodology must ... ... deal with interactive workloads ... execute repeatable workloads ... execute workloads automatically ... identify interaction lags ... automatically rate user satisfaction Half way through identification Volker Seeker

Considering the User’s Perspective Concept Execute mobile workload and capture a video Review the video and mark interaction lags Compare lag lengths to different system configurations Interaction Lag Timespan between user input and user feels input has been serviced An optimal approach is to execute a mobile workload Observe the user while doing it Mark each time the user has to wait for a system response and measure the time it takes Volker Seeker

Interaction Lag Markup 1104 Frames 22 Lags 36 Seconds Markup Time: 15:15 Minutes Interaction lag example as a reminder Volker Seeker

Markup Costs Markup Time: 360 hours or 9 working weeks Markup lags in each video manually Markup Time: 360 hours or 9 working weeks Workload 10 Minutes Length 17 System Configurations 5 Iterations  85 Videos Volker Seeker

Markup Costs Markup Time: 1800 hours or 1 working year Markup lags in each video manually Markup Time: 1800 hours or 1 working year 5 Workloads 10 Minutes each 17 System Configurations 5 Iterations  425 Videos Volker Seeker

Reusing a Video Markup Images of Lag Endings Start End Use an image of the lag ending to find it again in a different video Volker Seeker

Dealing with Non-Determinism Image 1 Image 2 Masked Image Mask out non deterministic areas to compare images. Other techniques ignored pixels Volker Seeker

Still requires 5 hours of manual work Markup Costs Find Lag Endings in a single video of the recorded workload. Still requires 5 hours of manual work Speedup of 85x Workload 10 Minute Workload 17 System Configurations 5 Iterations  85 Videos Volker Seeker

Finding Potential Lag Endings Pick a lag ending from a selection of potential ending frames rather than looking at every single one. Looking at 8 rather than 191 How can I reduce the amount of frames I have to look at to select lag ending images What If I gave you these? How long would it take you to find the lag ending? Volker Seeker

Suggesting Potential Lag Endings 1 2 3 4 5 6 Start Suggester Suggestions per lag Collection of selected Endings 1 2 3 4 5 Volker Seeker

Markup Costs 16:02 Minutes Manual Markup Work Speedup of 1347x Pick lag endings from suggested selection. 16:02 Minutes Manual Markup Work Speedup of 1347x Workload 10 Minute Workload 17 System Configurations 5 Iterations  85 Videos Volker Seeker

Research Goals Rate Trade-Off considering User Satisfaction Interactive Mobile Workload Distance to sweet spot Rate Trade-Off considering User Satisfaction Methodology must ... ... deal with interactive workloads ... execute repeatable workloads ... execute workloads automatically ... identify interaction lags ... automatically rate user satisfaction Half way through identification Volker Seeker

User Irritation Metric Lag begin Irritation Threshold 1 2 3 4 5 6 t x Lag ending of system configuration x Calculate User Irritation Set a user irritation threshold for each lag If the length of a lag stays below the threshold, it counts as not irritating If the length of a lag exceeds the threshold, a penalty is applied Different companies have different threshold models  our proposed system is configurable Compare different system configurations in terms of user irritation Volker Seeker

Irritation Thresholds Rate Trade-Off considering User Satisfaction Setting Thresholds per lag in a workload 1 t 2 t 3 t 4 t 5 t 6 Threshold Policy t Half way through identification A Volker Seeker

Irritation Thresholds Rate Trade-Off considering User Satisfaction Setting Thresholds per lag in a workload 1 t 2 t 3 t 4 t 5 t 6 Threshold Policy t Mention case study! B Volker Seeker

Research Goals Rate Trade-Off considering User Satisfaction Interactive Mobile Workload Distance to sweet spot Methodology must ... ... deal with interactive workloads ... execute repeatable workloads ... execute workloads automatically ... identify interaction lags ... automatically rate user satisfaction Half way through identification Volker Seeker

Final Methodology Run once Run arbitrary number of times Ending Images Execute prerecorded mobile workload and capture a video Pick lag endings from suggested selection Run once Execute prerecorded mobile workload and capture a video Detect lag endings using annotations Compare lag lengths to different system configurations Run arbitrary number of times Volker Seeker

Frequency Governor Case Study How close are Linux governors to the sweet spot? Qualcomm Dragonboard 8074 Snapdragon 800 Processor 4.3’’ qHD 540x960 LCD Android 4.3 Jelly Bean Linux Governors Conservative Interactive Ondemand We look at the governors Ondemand, Interactive and Conservative Oracle is the sweet spot Volker Seeker

Workload Input Classification 5 Workloads recorded from 5 Users Each Workload: 10 Minutes 14 Fixed Frequencies 3 Standard Governors 5 Iterations  85 Runs P1 Volker Seeker

Lag Length of each Lag for Ondemand Workload 01 Most Interaction Lags cluster around a 500ms length. P1 Volker Seeker

Lag Length of each Lag for all Frequency Configurations and Governors Workload 01 For fixed Frequencies, the graphs do not change much the higher the frequency  Saturation? P1 Volker Seeker

t User Irritation Irritation Threshold Workload 02 Irritation Threshold 110% of the lag length of the fastest frequency  Everything below this threshold does not count as irritating Oracle Governor Assume for each lag the lowest frequency that is still below the irritation threshold Assume the least energy consuming frequency for all other periods. P1 User irritated for that many seconds Lag begin Irritation Threshold 1 2 3 4 5 6 t Volker Seeker

Energy Consumption Power Model Workload 02 Power Model Run a CPU intensive artificial micro benchmark with each available frequency fixed. Calculate average power for each frequency and subtract idle state power. P1 Volker Seeker

Energy and User Irritation Workload 02 P1 Volker Seeker

Energy and User Irritation 1.22 1.20 0.92 36 P1 Volker Seeker

Summary and Future Work Interactive Mobile Workload Distance to sweet spot Rate Trade-Off considering User Satisfaction Automation of proposed method to a high degree (1347x speedup) Demonstration of method feasibility for standard frequency governors compared to an oracle (up to 22% less energy) Future Work Apply methodology to big.LITTLE type heterogeneous processors Integrate methodology into OS to make live decisions Volker Seeker