DESIGNING VM SCHEDULERS FOR EMBEDDED REAL-TIME APPLICATIONS Alejandro Masrur, Thomas Pfeuffer, Martin Geier, Sebastian Drössler and Samarjit Chakraborty.

Slides:



Advertisements
Similar presentations
Fakultät für informatik informatik 12 technische universität dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund,
Advertisements

Washington WASHINGTON UNIVERSITY IN ST LOUIS Real-Time: Periodic Tasks Fred Kuhns Applied Research Laboratory Computer Science Washington University.
Real Time Scheduling.
Time Demand Analysis.
Introduction to Embedded Systems Resource Management - III Lecture 19.
S YSTEM -W IDE E NERGY M ANAGEMENT FOR R EAL -T IME T ASKS : L OWER B OUND AND A PPROXIMATION Xiliang Zhong and Cheng-Zhong Xu ICCAD 2006, ACM Trans. on.
CPE555A: Real-Time Embedded Systems
Real-Time Scheduling CIS700 Insup Lee October 3, 2005 CIS 700.
Module 2 Priority Driven Scheduling of Periodic Task
Problem 12: Large Distributed Systems ECU1 BUS CC1 ECU2CC2 ECU3CC3 S1 S2 S3 S4 S5 5 Real-Time Input Streams - with jitter - with bursts - deadline > period.
Problem 11: Complex Hierarchical Scheduling Full Processor FP T3T2 T4T1 EDF T6T5 RM T10T9T8T7 EDFSPS DPS 10 Tasks - with jitter - with bursts - deadline.
Towards Feasibility Region Calculus: An End-to-end Schedulability Analysis of Real- Time Multistage Execution William Hawkins and Tarek Abdelzaher Presented.
Abhijit Davare 1, Qi Zhu 1, Marco Di Natale 2, Claudio Pinello 3, Sri Kanajan 2, Alberto Sangiovanni-Vincentelli 1 1 University of California, Berkeley.
ENFORCING PERFORMANCE ISOLATION ACROSS VIRTUAL MACHINES IN XEN Diwaker Gupta, Ludmila Cherkasova, Rob Gardner, Amin Vahdat Middleware '06 Proceedings of.
Chapter 11 Operating Systems
System-Wide Energy Minimization for Real-Time Tasks: Lower Bound and Approximation Xiliang Zhong and Cheng-Zhong Xu Dept. of Electrical & Computer Engg.
EE 249, Fall Discussion: Scheduling Haibo Zeng Amit Mahajan.
Embedded Systems Exercise 3: Scheduling Real-Time Periodic and Mixed Task Sets 18. May 2005 Alexander Maxiaguine.
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
Spring 2002Real-Time Systems (Shin) Rate Monotonic Analysis Assumptions – A1. No nonpreemptible parts in a task, and negligible preemption cost –
Misconceptions About Real-time Computing : A Serious Problem for Next-generation Systems J. A. Stankovic, Misconceptions about Real-Time Computing: A Serious.
A Tool for Describing and Evaluating Hierarchical Real-Time Bus Scheduling Policies Author: Trevor Meyerowitz, Claudio Pinello, Alberto DAC2003, June 24,2003.
Chapter 4 – Periodic Task Scheduling In many real-time systems periodic tasks dominate the demand. Three classic periodic task scheduling algorithms: –
Bringing Together Leading Brands in Industrial Automation Complete Automation TM on the Move RSLinx/ControlLogix Data Collection.
Technische Universität Dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund, Informatik 12 Germany 2007/12/14.
October 3, 2005CIS 7001 Compositional Real-Time Scheduling Framework Insik Shin.
End-to-End Delay Analysis for Fixed Priority Scheduling in WirelessHART Networks Abusayeed Saifullah, You Xu, Chenyang Lu, Yixin Chen.
1 Scheduling I/O in Virtual Machine Monitors© 2008 Diego Ongaro Scheduling I/O in Virtual Machine Monitors Diego Ongaro, Alan L. Cox, and Scott Rixner.
Embedded System Design Framework for Minimizing Code Size and Guaranteeing Real-Time Requirements Insik Shin, Insup Lee, & Sang Lyul Min CIS, Penn, USACSE,
MM Process Management Karrie Karahalios Spring 2007 (based off slides created by Brian Bailey)
Real-Time Scheduling CS4730 Fall 2010 Dr. José M. Garrido Department of Computer Science and Information Systems Kennesaw State University.
Scheduling policies for real- time embedded systems.
Real-Time Systems Mark Stanovich. Introduction System with timing constraints (e.g., deadlines) What makes a real-time system different? – Meeting timing.
Power-Aware Scheduling of Virtual Machines in DVFS-enabled Clusters
Real Time Scheduling Telvis Calhoun CSc Outline Introduction Real-Time Scheduling Overview Tasks, Jobs and Schedules Rate/Deadline Monotonic Deferrable.
CS Spring 2011 CS 414 – Multimedia Systems Design Lecture 31 – Multimedia OS (Part 1) Klara Nahrstedt Spring 2011.
Real-Time Scheduling CS4730 Fall 2010 Dr. José M. Garrido Department of Computer Science and Information Systems Kennesaw State University.
Prepare by : Ihab shahtout.  Overview  To give an overview of fixed priority schedule  Scheduling and Fixed Priority Scheduling.
© 2000 Morgan Kaufman Overheads for Computers as Components Processes and operating systems  Operating systems.
© 2000 Morgan Kaufman Overheads for Computers as Components Processes and operating systems Operating systems. 1.
6. Application mapping 6.1 Problem definition
RTOS task scheduling models
1 Iterative Integer Programming Formulation for Robust Resource Allocation in Dynamic Real-Time Systems Sethavidh Gertphol and Viktor K. Prasanna University.
- 1 -  P. Marwedel, Univ. Dortmund, Informatik 12, 2006 Universität Dortmund Periodic scheduling For periodic scheduling, the best that we can do is to.
Special Class on Real-Time Systems
CSE 522 Real-Time Scheduling (2)
Real Time Operating Systems Schedulability - Part 2 Course originally developed by Maj Ron Smith 12/20/2015Dr Alain Beaulieu1.
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
Real-Time Scheduling II: Compositional Scheduling Framework Insik Shin Dept. of Computer Science KAIST.
Introduction to Embedded Systems Rabie A. Ramadan 5.
CSCI1600: Embedded and Real Time Software Lecture 23: Real Time Scheduling I Steven Reiss, Fall 2015.
CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 31 – Process Management (Part 1) Klara Nahrstedt Spring 2009.
Mok & friends. Resource partition for real- time systems (RTAS 2001)
1.  System Characteristics  Features of Real-Time Systems  Implementing Real-Time Operating Systems  Real-Time CPU Scheduling  An Example: VxWorks5.x.
Undergraduate course on Real-time Systems Linköping University TDDD07 Real-time Systems Lecture 2: Scheduling II Simin Nadjm-Tehrani Real-time Systems.
Unit - I Real Time Operating System. Content : Operating System Concepts Real-Time Tasks Real-Time Systems Types of Real-Time Tasks Real-Time Operating.
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 32 – Multimedia OS Klara Nahrstedt Spring 2010.
Lecture 6: Real-Time Scheduling
Embedded System Scheduling
EMERALDS Landon Cox March 22, 2017.
EEE Embedded Systems Design Process in Operating Systems 서강대학교 전자공학과
EEE 6494 Embedded Systems Design
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
Processes and operating systems
Real-Time Process Scheduling Concepts, Design and Implementations
Guaranteeing Message Latencies on Controller Area Network (CAN)
Ch 4. Periodic Task Scheduling
Real-Time Process Scheduling Concepts, Design and Implementations
Xing Pu21 Ling Liu1 Yiduo Mei31 Sankaran Sivathanu1 Younggyun Koh1
Presentation transcript:

DESIGNING VM SCHEDULERS FOR EMBEDDED REAL-TIME APPLICATIONS Alejandro Masrur, Thomas Pfeuffer, Martin Geier, Sebastian Drössler and Samarjit Chakraborty Institute for Real-Time Computer Systems, TU Munich, Germany Realia Tec GmbH, Garching, Germany Presented by Steven Fingulin 1

Introduction 2  In embedded systems, many applications may exist in the same system  In automotive industry, many Electronic Control Units (ECUs) to control each application  Increases cost and may have redundant hardware that is underutilized  Virtual machines provide isolation between separate applications  If one program crashes, it won’t affect others  More critical applications such as airbag deployment and anti-lock brakes can be separated from radio or A/C systems  Every operation must go through the VMM or hypervisor before executing on hardware

Introduction 3  Scheduling on VM requires hierarchical scheduling  VMs must be scheduled onto processors at VMM level  Tasks must be scheduled inside of each VM  Deadline-monotonic (DM) scheduling – tasks are assigned priorities based on their deadlines  Rate-monotonic (RM) scheduling – shorter jobs have higher priority  Tasks on VMs are scheduled with DM  VMs on the VMM are scheduled with RM

Related Work 4  Analysis of hierarchical scheduling by Deng and Liu using Earliest Deadline First (EDF)  Kuo and Li performed similar analysis with RM and EDF  Stricter assumption of periods equal to deadlines  PShED framework allows servers to update their priority according to deadline of current task  Shin and Lee present VM scheduling with periodic fixed CPU times for each VM  VM literature mainly analyzes performance and fairness of scheduling

Models and Notation 5  T denotes a set of sporadic independent tasks  Task T i has deadline d i, worst case execution time e i and minimum inter-release time p i  V denotes the set of all VMs V l in the system  Each VM has a time slice s l and a period p l  Tasks and VMs are sorted by priority(T i has higher priority than T i+1 )

Requirements for a VM 6  Execution length – largest time interval that it takes a VM to execute a single time slice  Assume that scheduling all VMs is feasible  V l can first finish executing sl time units as early as possible  All higher priority VMs are then released together with the next execution of V l  These assumptions follow that the VM’s schedule time s l must be greater than the worst case execution time of the task associated with the smallest deadline: s l ≥ e l,min V l ’s execution length Worst-case response time for V l

Scheduling on a VM 7  Each application (composed of several real-time tasks) should run on its own VM  All of the tasks in a VM can run on the same processor  If only one VM allocated to a processor, then the tasks can be scheduled if s l ≤ p l  If w i ≤ d i, then the tasks are able to be scheduled and will meet deadlines Worst-case execution demand of a task

Guarantee of Task Meeting Worst-Case Deadline 8  k l,i is number of complete periods that pass between when a task can start and its deadline  min(s 1, α (t i -k l,i *p l ) function is time in last period of deadline wiwi

Design of Highest-Priority VM Scheduler 9  VMs are scheduled under RM, so period determines priority of each VM  Highest priority VM is V 1 with minimum deadline d 1 =p 1 and worst case response s 1  Eq 9 is used to find s 1 that enables scheduling of V 1  Eq 10 is derived by setting min(s 1,t 1 -k 1,i *p 1 ) to 0 and substituting d i -(p 1 -s 1 )/p 1 for t i  s 1 must be smaller than p 1

VMs with Lower Priority 10  Shortest deadline of any task in V l determines priority of V l  p l = d l,min + s l –w l : derived from combining equations 2 and 1  Same equation as highest priority can be employed to solve for sl  By approximating α (t), a faster method can be used that requires less iterations to solve (appendix slide)  The complexity of calculating slice times is pseudo- polynomial

VM Scheduler 11

Case Study 12  Electronic Stability Control (ESC)  Improves steering by minimizing skidding and blocking  Two real-time tasks: T1 and T2  Engine Management (EM)  Computes best ignition point after each revolution in the engine  Three real-time tasks: T3, T4, T5  Xen hypervisor used for scheduling  Intel Core GHz

Case Study 13  Network Interface Controller (NIC) assigned to an unprivileged domain in Xen to interface VMs to communication network  Sensors are connected to a bus with an Ethernet network listening via a gateway  Design cases analyzed:  Each real-time task has its own VM Inefficient due to memory overhead Higher utilization (more control over slice and period)  Each application is run on a VM

Network Domain 14  Network domain exists between VMs and bus so it must be highest priority  Has its own time slice and period, s N and p N  Number of packets limited by speed at which they are sent and number of tasks that can send them  s N ≥ n * e N : e N is worst-case processing time of a packet  n=5 and e N =0.06ms therefore s N =0.3ms

Network Domain 15  Worst-case response time used to determine p N  domN receives message and uses up its time slice  Relays message to V 1 and must wait for response  p N must be large enough that all tasks can process a packet  p N = d 1,min -s N : since d 1,min =2.5, p N =2.2ms

Design Cases 16  Case A (Task Domains):  DM policy sets T1 as highest priority and T5 as lowest  Period set to period of the task  Slice set to execution time of the task  System and schedule are feasible  Case B (Application Domains):  ESC tasks: T1 and T2 on one domain  EM tasks: T3, T4, and T5 on separate domain  Network and EM share one core, ESC gets the other

Design Case B 17  Electronic Stability Control  Period of ESC: p ESC = d1 = 2.5ms  Time slice of ESC: s ESC ≥ e1 = 1ms  Equation 5 and 10 applied to calculate s ESC so that it accounts for execution of T2  s ESC = 1.5ms  Engine Management  Must share time with network VM so it is lower priority  s EM = 3.85ms and p EM = 6.7ms

Results 18  Remote PC simulates input  20k packets sent for each point on curve

Results and Conclusion 19  For ESC tasks T1 and T2, no real difference between design A or B  Can meet deadline up to 70 and 50% respectively  EM task T3 always makes deadline  EM task T4 makes deadline up to 65% higher priority tasks  EM task T5 meets deadline up to 80%  Design A is better for below 35%  Presented method for real-time scheduler in VM systems  Compared case of task-dedicated VMs vs. application-dedicated

Appendix 20