Energy-Efficient Soft Real-Time CPU Scheduling for Mobile Multimedia Systems Authors: Wanghong Yuan, Klara Narhstedt Appears in SOSP 2003 Presented by:

Slides:



Advertisements
Similar presentations
Pricing for Utility-driven Resource Management and Allocation in Clusters Chee Shin Yeo and Rajkumar Buyya Grid Computing and Distributed Systems (GRIDS)
Advertisements

1 Aggregated Traffic Flow Weight Controlled Hierarchical MAC Protocol for Wireless Sensor Networks Asia FI School Presented By Md. Abdur Razzaque Kyung.
Feedback EDF Scheduling Exploiting Dynamic Voltage Scaling Yifan Zhu and Frank Mueller Department of Computer Science Center for Embedded Systems Research.
Mehdi Naghavi Spring 1386 Operating Systems Mehdi Naghavi Spring 1386.
Introduction to Embedded Systems Resource Management - III Lecture 19.
Energy-efficient Task Scheduling in Heterogeneous Environment 2013/10/25.
Energy Efficiency through Burstiness Athanasios E. Papathanasiou and Michael L. Scott University of Rochester, Computer Science Department Rochester, NY.
Real- time Dynamic Voltage Scaling for Low- Power Embedded Operating Systems Written by P. Pillai and K.G. Shin Presented by Gaurav Saxena CSE 666 – Real.
1 BUFFERING APPROACH FOR ENERGY SAVING IN VIDEO SENSORS Wanghong Yuan, Klara Nahrstedt Department of Computer Science University of Illinois at Urbana-Champaign.
Introduction and Background  Power: A Critical Dimension for Embedded Systems  Dynamic power dominates; static /leakage power increases faster  Common.
Context Awareness System and Service SCENE JS Lee 1 An Energy-Aware Framework for Dynamic Software Management in Mobile Computing Systems.
Computer Science Deadline Fair Scheduling: Bridging the Theory and Practice of Proportionate-Fair Scheduling in Multiprocessor Servers Abhishek Chandra.
Aleksandra Tešanović Low Power/Energy Scheduling for Real-Time Systems Aleksandra Tešanović Real-Time Systems Laboratory Department of Computer and Information.
Strategic Directions in Real- Time & Embedded Systems Aatash Patel 18 th September, 2001.
Adaptive Video Coding to Reduce Energy on General Purpose Processors Daniel Grobe Sachs, Sarita Adve, Douglas L. Jones University of Illinois at Urbana-Champaign.
CS 423 – Operating Systems Design Lecture 22 – Power Management Klara Nahrstedt and Raoul Rivas Spring 2013 CS Spring 2013.
Task Alloc. In Dist. Embed. Systems Murat Semerci A.Yasin Çitkaya CMPE 511 COMPUTER ARCHITECTURE.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Thanks to Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction n What is an Operating System? n Mainframe Systems.
 What is an operating system? What is an operating system?  Where does the OS fit in? Where does the OS fit in?  Services provided by an OS Services.
Integrating Fine-Grained Application Adaptation with Global Adaptation for Saving Energy Vibhore Vardhan, Daniel G. Sachs, Wanghong Yuan, Albert F. Harris,
Computer Science Department University of Pittsburgh 1 Evaluating a DVS Scheme for Real-Time Embedded Systems Ruibin Xu, Daniel Mossé and Rami Melhem.
1 Overview 1.Motivation (Kevin) 1.5 hrs 2.Thermal issues (Kevin) 3.Power modeling (David) Thermal management (David) hrs 5.Optimal DTM (Lev).5 hrs.
Energy-Efficient Soft Real-Time CPU Scheduling for Mobile Multimedia Systems Wanghong Yuan, Klara Nahrstedt Department of Computer Science University of.
Low Power Design for Real-Time Systems Low power (energy) consumption is a key design for embedded systems Battery’s life during operation Reliability.
Page 110/9/2015 CSE 40373/60373: Multimedia Systems So far…  RMS - task with highest rate has highest priority  EDF – earliest deadline first  Tasks.
1 EE5900 Advanced Embedded System For Smart Infrastructure Energy Efficient Scheduling.
A S CHEDULABILITY A NALYSIS FOR W EAKLY H ARD R EAL - T IME T ASKS IN P ARTITIONING S CHEDULING ON M ULTIPROCESSOR S YSTEMS Energy Reduction in Weakly.
Ramazan Bitirgen, Engin Ipek and Jose F.Martinez MICRO’08 Presented by PAK,EUNJI Coordinated Management of Multiple Interacting Resources in Chip Multiprocessors.
Scheduling policies for real- time embedded systems.
1.1 Operating System Concepts Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered.
1 Distributed Energy-Efficient Scheduling for Data-Intensive Applications with Deadline Constraints on Data Grids Cong Liu and Xiao Qin Auburn University.
Company name KUAS HPDS A Realistic Variable Voltage Scheduling Model for Real-Time Applications ICCAD Proceedings of the 2002 IEEE/ACM international conference.
1 Process Scheduling in Multiprocessor and Multithreaded Systems Matt Davis CS5354/7/2003.
Hard Real-Time Scheduling for Low- Energy Using Stochastic Data and DVS Processors Flavius Gruian Department of Computer Science, Lund University Box 118.
VGreen: A System for Energy Efficient Manager in Virtualized Environments G. Dhiman, G Marchetti, T Rosing ISLPED 2009.
NC STATE UNIVERSITY 1 Feedback EDF Scheduling w/ Async. DVS Switching on the IBM Embedded PowerPC 405 LP Frank Mueller North Carolina State University,
A Utility-based Approach to Scheduling Multimedia Streams in P2P Systems Fang Chen Computer Science Dept. University of California, Riverside
Dynamic Voltage Frequency Scaling for Multi-tasking Systems Using Online Learning Gaurav DhimanTajana Simunic Rosing Department of Computer Science and.
NUS.SOC.CS5248 A Time Series-based Approach for Power Management in Mobile Processors and Disks X. Liu, P. Shenoy and W. Gong Presented by Dai Lu.
Lev Finkelstein ISCA/Thermal Workshop 6/ Overview 1.Motivation (Kevin) 2.Thermal issues (Kevin) 3.Power modeling (David) 4.Thermal management (David)
CSCI1600: Embedded and Real Time Software Lecture 23: Real Time Scheduling I Steven Reiss, Fall 2015.
Multimedia Computing and Networking Jan Reduced Energy Decoding of MPEG Streams Malena Mesarina, HP Labs/UCLA CS Dept Yoshio Turner, HP Labs.
Xi He Golisano College of Computing and Information Sciences Rochester Institute of Technology Rochester, NY THERMAL-AWARE RESOURCE.
CprE 458/558: Real-Time Systems (G. Manimaran)1 Energy Aware Real Time Systems - Scheduling algorithms Acknowledgement: G. Sudha Anil Kumar Real Time Computing.
Euro-Par, HASTE: An Adaptive Middleware for Supporting Time-Critical Event Handling in Distributed Environments ICAC 2008 Conference June 2 nd,
Determining Optimal Processor Speeds for Periodic Real-Time Tasks with Different Power Characteristics H. Aydın, R. Melhem, D. Mossé, P.M. Alvarez University.
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 32 – Multimedia OS Klara Nahrstedt Spring 2010.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
1 OPERATING SYSTEMS. 2 CONTENTS 1.What is an Operating System? 2.OS Functions 3.OS Services 4.Structure of OS 5.Evolution of OS.
CPU Scheduling Scheduling processes (or kernel-level threads) onto the cpu is one of the most important OS functions. The cpu is an expensive resource.
Embedded System Scheduling
Chapter 1: Introduction
Problem and Motivation
Chapter 1: Introduction
Chapter 2 Scheduling.
Chapter 8 – Processor Scheduling
Chapter 1: Introduction
Chapter 1: Introduction
Energy Efficient Scheduling in IoT Networks
Dynamic Voltage Scaling
Power improvement in the multitasking environment
Chapter 1: Introduction
Subject Name: Operating System Concepts Subject Number:
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Presentation transcript:

Energy-Efficient Soft Real-Time CPU Scheduling for Mobile Multimedia Systems Authors: Wanghong Yuan, Klara Narhstedt Appears in SOSP 2003 Presented by: Samuel Kim

Table of Contents About the Authors Introduction Algorithm Implementation Results Related Works Summary

About the Authors Wanghong Yuan B.S., M.S. Peking University Ph.D. University of Illinois at Urbana-Champaign Software Engineer at Google Klara Nahrstedt Ph.D. University of Pennsylvania Professor at University of Illinois at Urbana- Champaign

Table of Contents About the Authors Introduction Algorithm Implementation Experimental Results Related Works Conclusion

Introduction Multimedia Becoming A Standard in Mobile Computing Audio Video Data Goal on Mobile Systems Manage System Resources Quality of Service - High Performance Energy Efficiency - Battery Life

Greater Control Over System Resources Hardware Adaptability CPU Voltage Scaling E = aCVf 2 t Software Adaptability Application Quality levels Statistical Performance Requirements Soft Real-Time guarantees

How Do We Approach System Resource Management? Adapt resources based on system layers Most approaches in research adapt a single layer Possible to adapt across multiple layers? Adaptive Layers Application Operating System /Network Hardware

Multiple Layer Adaptation Requires Coordination Conflict Adapting Multiple System Layers Scale down CPU Increase the application QoS Different Objectives Minimize Energy Consumption Maximize Quality/Performance Coordinate Objectives at a Higher Level

The Purpose of GRACE Framework: Cross-Layer Adaptation Global Resource Adaptation via CoopEration Figures from S. Adve. The Illinois GRACE Project: Global Resource Adaptation through CoopEration, Workshop on Self-Healing Adaptive and Self-Managed Systems, 2002 Global cooperation of resources Coordinator GRACE Adaptation over 1 or 2 layers Application Network Protocols Operating System Architecture, Hardware Current Approaches

GRACE-OS: Enhanced CPU Scheduler Previous Methods Soft Real-Time (SRT) Scheduling Dynamic Voltage Scaling (DVS) GRACE-OS DVS is integrated into the CPU Scheduler Continue to keep performance guarantees of SRT Scheduling

Table of Contents About the Authors Introduction Design and Algorithm Implementation Experimental Results Related Works Conclusion

Design of GRACE-OS Profiler How to estimate cycle usage? Monitor CPU cycle usage of a task Estimate demand by online profiling SRT Scheduler How to allocate CPU Resources? Allocate CPU cycles to task based on profiler Speed Adapter How to set CPU Speed/Voltage? Set CPU to minimum required speed based on #cycles allocated

Algorithm: Profiler How to estimate the cycle usage? Estimate based on statistical distribution instead than instantaneous demand More stability in CPU speeds Meets performance requirements of SRT Profile during run-time

Algorithm: SRT Scheduler Determine which task to execute When and how long (# CPU cycles) Grace-OS is a stochastic scheduler Decide # cycles to allocate based on: Performance requirement, p Demand distribution of task F(C) = P[X C] p X, # cycles required for task C, # cycles allocated to task

Algorithm: Dynamic DVS

Table of Contents About the Authors Introduction Algorithm Implementation Experimental Results Related Works Conclusion

Implementation Testbed HP Pavilion N5470 Laptop (Athlon Processor) Red Hat Linux 7.2 Modified Linux kernel (GRACE-OS) Software Architecture of Implementation

Implementation System calls added to support SRT tasks start_srt – start real-time mode exit_srt – exit real-time mode finish_job – tell scheduler that task finished job set_budget – allocate cycles for task set_dvspnt – set CPU speed in tasks speed schedule Modifying the process control block 5 attributes

Table of Contents About the Authors Introduction Algorithm Implementation Experimental Results Related Works Conclusion

System Call Overhead System Calls: cycles Multimedia Processing: 2x x10 8 cycles % - 0.5% of cycles per job

Profiling and Estimation Overhead Profiling Cost: cycles Overhead for online demand estimation is high (0.1% - 100% of cycles per job) Demand estimation should be infrequent Stable models allow for infrequent estimation Figure: Cost of Demand Estimation

Speed Scaling Overhead Costs 8,000 to 16,000 cycles (~10-50 us) Should be invoked infrequently (500 us in GRACE-OS) Speed change overhead should improve with processor design

Stability of Demand Distribution Codec: mpgplay a)Cycle usage varies greatly b)Demand distribution remains stable

Stability of Demand Distribution (Other Codecs)

Efficiency of GRACE-OS Compare to other allocation schemes Running Single Applications Misses deadlines 0.3%-0.6% 92% CPU busy time at lowest CPU speed 53.4%-71.6% reduction in energy Running Multiple Applications Misses deadlines 4.9% 83.8% CPU busy time at lowest CPU speed

CPU Usage for Multiple Applications Dynamic DVS spends more time in lowest CPU speed than other DVS schemes

Energy Efficiency of GRACE-OS toast and madplay – Low CPU demand GRACE-OS savings limited by CPU settings

Impact of Setting Performance p Normalized energy increases p = 0.5 to p = 0.95 Fewer energy savings p = 0.95 to p = 1.0 Need more CPU settings Impact of p on Normalized Energy

Impact of Mixed Workload Extra allocation to extra best-effort applications increases energy consumption Less time for each application Increases total CPU demand Impact of Mixed Workload

Table of Contents About the Authors Introduction Algorithm Implementation Experimental Results Related Works Conclusion

Related Works: Soft Real-Time Scheduling Proportional Sharing A. Chandra, M. Adler, P. Goyal, and P. Shenoy. Surplus fair scheduling: A proportional- share CPU scheduling algorithm for symmetric multiprocessors. In Proc. of 4th Symposium on Operating System Design and Implementation, Oct CPU Reservations M. Jones, D. Rosu, and M. Rosu. CPU reservations & time constraints: Efficient, predictable scheduling of independent activities. In Proc. of 16th Symposium on Operating Systems Principles, Oct Real-Time Scheduling Algorithms C. L. Liu and J. W. Layland. Scheduling algorithms for multiprogramming in a hard real-time environment. JACM, 20(1):46–61, Jan Stochastic Scheduling K. Gardner. Probabilistic analysis and scheduling of critical soft real-time systems. PhD thesis, Department of Computer Science, University of Illinois at Urbana-Champaign, 1999.

Related Works: Dynamic Voltage Scaling General Purpose DVS based on Average CPU Utilization D. Grunwald, P. Levis, K. Farkas, C. Morrey III, and M. Neufeld. Policies for dynamic clock scheduling. In Proc. of 4th Symposium on Operating System Design and Implementation, Oct Real Time DVS P. Pillai and K. G. Shin. Real-time dynamic voltage scaling for low-power embedded operating systems. In Proc. of 18th Symposium on Operating Systems Principles, Oct Stochastic DVS J. Lorch and A. Smith. Improving dynamic voltage scaling algorithms with PACE. In Proc. of ACM SIGMETRICS 2001 Conference, June F. Gruian. Hard real-time scheduling for low energy using stochastic data and DVS processors. In Proc. Of Intl. Symp. on Low-Power Electronics and Design, Aug

Table of Contents About the Authors Introduction Algorithm Implementation Experimental Results Related Works Conclusion

Pros Optimizes multiple layers of system resources Conserve energy while ensuring quality of service Small overhead Support for multiple tasks Thorough testing Cons Estimate energy savings without measurement Testing limited to multimedia applications Limited number of tests per codec 8 runs per test Discard largest and smallest values Limited CPU speed settings decreases energy savings