Jim Anderson 1 Multiprocessor Fair Scheduling The Case for Multiprocessor Fair Scheduling James H. Anderson University of North Carolina at Chapel Hill.

Slides:



Advertisements
Similar presentations
Real Time Scheduling.
Advertisements

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.
REAL-TIME COMMUNICATION ANALYSIS FOR NOCS WITH WORMHOLE SWITCHING Presented by Sina Gholamian, 1 09/11/2011.
DP-F AIR : A Simple Model for Understanding Optimal Multiprocessor Scheduling Greg Levin † Shelby Funk ‡ Caitlin Sadowski † Ian Pye † Scott Brandt † †
RUN: Optimal Multiprocessor Real-Time Scheduling via Reduction to Uniprocessor Paul Regnier † George Lima † Ernesto Massa † Greg Levin ‡ Scott Brandt ‡
Chapter 5 CPU Scheduling. CPU Scheduling Topics: Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling.
Distributed Process Scheduling Summery Distributed Process Scheduling Summery BY:-Yonatan Negash.
Soft Real-Time Semi-Partitioned Scheduling with Restricted Migrations on Uniform Heterogeneous Multiprocessors Kecheng Yang James H. Anderson Dept. of.
SIGMETRICS 2008: Introduction to Control Theory. Abdelzaher, Diao, Hellerstein, Lu, and Zhu. CPU Utilization Control in Distributed Real-Time Systems Chenyang.
Computer Science Deadline Fair Scheduling: Bridging the Theory and Practice of Proportionate-Fair Scheduling in Multiprocessor Servers Abhishek Chandra.
CS 3013 & CS 502 Summer 2006 Scheduling1 The art and science of allocating the CPU and other resources to processes.
Chapter 6: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Chapter 6: CPU Scheduling Basic.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Chapter 13 Embedded Systems
5: CPU-Scheduling1 Jerry Breecher OPERATING SYSTEMS SCHEDULING.
Chapter 5: CPU Scheduling
Enhancing the Platform Independence of the Real-Time Specification for Java Andy Wellings, Yang Chang and Tom Richardson University of York.
1 Chapter 13 Embedded Systems Embedded Systems Characteristics of Embedded Operating Systems.
Multiprocessor Real- Time Scheduling Aaron Harris CSE 666 Prof. Ganesan.
New Schedulability Tests for Real- Time task sets scheduled by Deadline Monotonic on Multiprocessors Marko Bertogna, Michele Cirinei, Giuseppe Lipari Scuola.
Fair Scheduling of Real-Time Tasks on Multiprocessors Uday Prabhala.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Lecture 5 Operating Systems.
OPERATING SYSTEMS CPU SCHEDULING.  Introduction to CPU scheduling Introduction to CPU scheduling  Dispatcher Dispatcher  Terms used in CPU scheduling.
More Scheduling cs550 Operating Systems David Monismith.
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.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
1 Reducing Queue Lock Pessimism in Multiprocessor Schedulability Analysis Yang Chang, Robert Davis and Andy Wellings Real-time Systems Research Group University.
SOFTWARE / HARDWARE PARTITIONING TECHNIQUES SHaPES: A New Approach.
Scheduling policies for real- time embedded systems.
Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned.
Multiprocessor and Real-Time Scheduling Chapter 10.
Chapter 101 Multiprocessor and Real- Time Scheduling Chapter 10.
National Taiwan University Department of Computer Science and Information Engineering 1 Optimal Real-Time Scheduling for Uniform Multiprocessors 薛智文 助理教授.
Real-Time Systems Mark Stanovich. Introduction System with timing constraints (e.g., deadlines) What makes a real-time system different? – Meeting timing.
BFair: An Optimal Scheduler for Periodic Real-Time Tasks
NC STATE UNIVERSITY Center for Embedded Systems Research (CESR) Electrical & Computer Engineering North Carolina State University Ali El-Haj-Mahmoud and.
1 11/29/2015 Chapter 6: CPU Scheduling l Basic Concepts l Scheduling Criteria l Scheduling Algorithms l Multiple-Processor Scheduling l Real-Time Scheduling.
Computer Science & Engineering, ASU1/17 Pfair Scheduling of Periodic Tasks with Allocation Constraints on Multiple Processors Deming Liu and Yann-Hang.
Special Class on Real-Time Systems
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.
Determining Optimal Processor Speeds for Periodic Real-Time Tasks with Different Power Characteristics H. Aydın, R. Melhem, D. Mossé, P.M. Alvarez University.
Studying and Implementing Multi-processor based Real-time Scheduling Algorithms in Linux Musfiq Niaz Rahman
1 Uniprocessor Scheduling Chapter 3. 2 Alternating Sequence of CPU And I/O Bursts.
Lecture 4 CPU scheduling. Basic Concepts Single Process  one process at a time Maximum CPU utilization obtained with multiprogramming CPU idle :waiting.
1 Performance Impact of Resource Provisioning on Workflows Gurmeet Singh, Carl Kesselman and Ewa Deelman Information Science Institute University of Southern.
CPU scheduling.  Single Process  one process at a time  Maximum CPU utilization obtained with multiprogramming  CPU idle :waiting time is wasted 2.
Improved Conditions for Bounded Tardiness under EPDF Fair Multiprocessor Scheduling UmaMaheswari Devi and Jim Anderson University of North Carolina at.
Distributed Process Scheduling- Real Time Scheduling Csc8320(Fall 2013)
Real-Time Operating Systems RTOS For Embedded systems.
Tardiness Bounds for Global EDF Scheduling on a Uniform Multiprocessor Kecheng Yang James H. Anderson Dept. of Computer Science UNC-Chapel Hill.
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.
Embedded System Scheduling
Load Balancing and It’s Related Works in Cloud Computing
Unit OS9: Real-Time and Embedded Systems
Chapter 2 Scheduling.
Chapter 8 – Processor Scheduling
Chapter 6: CPU Scheduling
CPU Scheduling G.Anuradha
Sanjoy Baruah The University of North Carolina at Chapel Hill
CSCI1600: Embedded and Real Time Software
Chapter 6: CPU Scheduling
CPU SCHEDULING.
CPU scheduling decisions may take place when a process:
Uniprocessor scheduling
Operating System , Fall 2000 EA101 W 9:00-10:00 F 9:00-11:00
Chapter 6: CPU Scheduling
Anand Srinivasan Department of Computer Science
Presentation transcript:

Jim Anderson 1 Multiprocessor Fair Scheduling The Case for Multiprocessor Fair Scheduling James H. Anderson University of North Carolina at Chapel Hill

Jim Anderson 2 Multiprocessor Fair Scheduling Real-time Adaptivity on Multiprocessors l Motivating Application: Whisper acoustic tracker for virtual environments. Tracking Computer Microphones on ceiling Speakers on hands and feet User

Jim Anderson 3 Multiprocessor Fair Scheduling Whisper Characteristics l Workload requires a multiprocessor. l Predictive techniques used in tracking. »Time to compute next prediction depends on accuracy of previous prediction. »  computational costs will vary. »Lots of microphones/speakers  lots of tasks! –Not practical to provision all tasks assuming max costs. l Question: How to ensure adaptive real-time execution on a multiprocessor?

Jim Anderson 4 Multiprocessor Fair Scheduling Multiprocessor Scheduling Partitioning Partition tasks so that each task always runs on the same processor. Steps: 1.Assign tasks to processors (bin packing). 2.Schedule tasks on each processor using uniprocessor algorithms.

Jim Anderson 5 Multiprocessor Fair Scheduling Problems with Partitioning l Variations in computation costs may necessitate a re-partitioning. l Problematic because: »Partitioning = bin packing… –…an intractable problem. »Re-partitionings may cause task migrations… –… the very thing partitioning is designed to avoid.

Jim Anderson 6 Multiprocessor Fair Scheduling Global Scheduling An Alternative to Partitioning A single scheduling algorithm is used that schedules all tasks. Important Difference: Tasks may migrate among the processors. Probably appropriate only on tightly-coupled systems. Rest of the Talk: Global scheduling algorithms that facilitate real-time adaptivity. Rest of the Talk: Global scheduling algorithms that facilitate real-time adaptivity.

Jim Anderson 7 Multiprocessor Fair Scheduling Deadline Scheduling Our Focus l We consider deadline scheduling algorithms wherein: »tasks repeatedly submit “pieces of work” to the system to schedule; »these pieces of work have deadlines; »the system schedules work on an earliest- deadline-first basis.

Jim Anderson 8 Multiprocessor Fair Scheduling The Periodic Task Model The Simplest Form of Recurrent Execution… l Periodic Tasks: »Task T = (T.e, T.p) releases a job with execution cost T.e every T.p time units. –T’s weight (or utilization or processor share) is T.wt = T.e/T.p. »Each job of T has a deadline at the next job release of T T = (2,5) U = (9,15) 2 5

Jim Anderson 9 Multiprocessor Fair Scheduling Job-based Scheduling Doesn’t Work l Can’t consider jobs as the pieces of work to schedule because deadlines can be missed. l Example: Scheduling three (2,3) tasks on two processors. 02 Processor 1 13 Processor 2 Job 1 of Task 2 Job 1 of Task 1 Job 1 of Task 3 missed deadline! (These three jobs have equal deadlines and hence are indistinguishable.)

Jim Anderson 10 Multiprocessor Fair Scheduling Alternative: Pfair Scheduling l Basic Ideas: »Processor time is allocated in multiples of some basic quantum. »Break jobs into quantum-length subtasks. »Assign deadlines to subtasks. task migration occurs here So, all pieces of work to schedule have a cost of 1. No deadlines are missed! 02 Processor 1 13 Processor 2 Job 1 of Task 2 Task 1 Job 1 of Task 3 Task 1 l Previous Example: quantum

Jim Anderson 11 Multiprocessor Fair Scheduling Some Details… Subtasks and Windows l Each subtask must execute within a certain time window. »End of window = deadline. l Window layout determined by task’s weight. l Several optimal Pfair scheduling algorithms are known. »Optimal = capable of ensuring all subtask (and job) deadlines as long as  T T.wt  M (the no. of processors)

Jim Anderson 12 Multiprocessor Fair Scheduling First 6 windows of a task T with weight 6/10 Windowing Example T6T6 T5T5 T4T4 T3T3 T2T2 T1T1 Windows may be of two different lengths, and successive windows may overlap by one quantum. Deadline of T 3 Subtasks

Jim Anderson 13 Multiprocessor Fair Scheduling TIME A 1/2 B 1/3 C 1/3 E 2/9 D 2/9 Example Pfair Schedule On Processor 1 TASKS On Processor 2

Jim Anderson 14 Multiprocessor Fair Scheduling Question: Can Non-periodic Recurrent Tasks be Supported? l Yes! »Developed the “early-release” (ER) model. –Enables work-conserving behavior. »Developed the “intra-sporadic” (IS) model. –Generalizes the sporadic model. »ER + IS = “rate-based”.

Jim Anderson 15 Multiprocessor Fair Scheduling ER and IS Models TIME IS Delay Early Release Idea: Allow a subtask to execute “early”, i.e., before its window. Idea: Allow “delays” between subtask windows. TIME ERfairness (“Early Release”) ISfairness (“Intra-Sporadic”)

Jim Anderson 16 Multiprocessor Fair Scheduling Question: Can Dynamic Tasks be Supported? l Yes! l Results: »Devised rules under which tasks can leave and join a running system. l These rules can be applied to adaptively reweight tasks. »Leave with old weight, join with new. »However, a significant delay may be incurred. (Dynamic = Tasks can Leave and Join)

Jim Anderson 17 Multiprocessor Fair Scheduling Question: Can Quick Adaptations be Supported? l Yes! l Two approaches: »Reactive: Increase task shares when there is idleness (available capacity). –Resulting scheme: Quick-release fair (QRfair). »Proactive: Allow tasks to register weight-change requests with the scheduler. –Resulting scheme: Proactive fair (PROfair).

Jim Anderson 18 Multiprocessor Fair Scheduling Proactive vs. Reactive spare capacity becomes available No adaptivity idle processor encountered  shift next window left QRfair (reactive) PROfair (proactive) increase weight to consume available capacity (Figure depicts the window layout of one task)

Jim Anderson 19 Multiprocessor Fair Scheduling QRfair Experiment From RTSS 2003

Jim Anderson 20 Multiprocessor Fair Scheduling Other Research l Devised efficient synchronization techniques for Pfair-scheduled systems. l Devised techniques for discouraging task migrations. l Devised techniques for minimizing bus contention in such systems. l Developed a prototype threads package. l New Project: Use this threads package to re- implement Whisper.

Jim Anderson 21 Multiprocessor Fair Scheduling Conclusions l Partitioning seems ill-suited for highly adaptive multiprocessor systems. »Moreover, partitioning has been studied for over 20 years and isn’t likely to improve. l The case for Global Scheduling (Pfair, in particular) is likely to improve with further research. »More research needed (for example) on… –support for device I/O, –coupling feedback control mechanisms with adaptive reweighting schemes, –better techniques for discouraging migrations, particularly in soft real-time systems, –etc. etc. etc.

Jim Anderson 22 Multiprocessor Fair Scheduling References J. Anderson, A. Block, and A. Srinivasan, Quick-release fair scheduling, Proceedings of the 24th IEEE Real-time Systems Symposium, pp , December J. Anderson, P. Holman, and A. Srinivasan, Fair multiprocessor scheduling, in Handbook on Scheduling: Algorithms, Models, and Performance Analysis, Joseph Y. Leung (ed.), Chapman and Hall/CRC, pp , J. Anderson and A. Srinivasan, Early-release fair scheduling, Proceedings of the 12th Euromicro Conference on Real-time Systems, pp , June J. Anderson and A. Srinivasan, Mixed Pfair/ERfair scheduling of asynchronous periodic tasks, Journal of Computer and System Sciences, 68(1): , February, Preliminary version appeared in Proceedings of the 13th Euromicro Conference on Real- time Systems, pp , June S. Baruah, N. Cohen, C.G. Plaxton, and D. Varvel, Proportionate progress: A notion of fairness in resource allocation, Algorithmica, 15: , S. Baruah, J. Gehrke, and C.G. Plaxton, Fast scheduling of periodic tasks on multiple resources, Proceedings of the 9th International Parallel Processing Symposium, pp , April 1995.

Jim Anderson 23 Multiprocessor Fair Scheduling References (Continued) U. Devi and J. Anderson, Fair integrated scheduling of soft real-time tardiness class on multiprocessor platforms, Proceedings of the 10th IEEE Real-time and Embedded Technology and Applications Symposium, pp , May U. Devi and J. Anderson, Improved conditions for bounded tardiness under EPDF fair multiprocessor scheduling, Proceedings of 12th International Workshop on Parallel and Distributed Real-Time Systems, April 2004 (on CD ROM). U. Devi and J. Anderson, Schedulable utilization bounds for EPDF fair multiprocessor scheduling, Proceedings of the 10th International Conference on Real-time and Embedded Computing Systems and Applications, August 2004, to appear. P. Holman, On the Implementation of Pfair-scheduled Multiprocessor Systems, Ph.D. Dissertation, University of North Carolina at Chapel Hill, August P. Holman and J. Anderson, Guaranteeing Pfair supertasks by reweighting, Proceedings of the 22nd IEEE Real-time Systems Symposium, pp , December P. Holman and J. Anderson, Locking in Pfair-scheduled multiprocessor systems, Proceedings of the 23rd IEEE Real-time Systems Symposium, pp , December 2002.

Jim Anderson 24 Multiprocessor Fair Scheduling References (Continued) P. Holman and J. Anderson, Object sharing in Pfair-scheduled multiprocessor systems, Proceedings of the 14th Euromicro Conference on Real-time Systems, pp , June P. Holman and J. Anderson, Using hierarchal scheduling to improve resource utilization in multiprocessor real-time systems, Proceedings of the 15th Euromicro Conference on Real-time Systems, pp , July P. Holman and J. Anderson, Implementing Pfairness on a symmetric multiprocessor, Proceedings of the 10th IEEE Real-time and Embedded Technology and Applications Symposium, pp , May M. Moir and S. Ramamurthy, Pfair scheduling of fixed and migrating periodic tasks on multiple resources, Proceedings of the Twentieth IEEE Real-time Systems Symposium, pp , December A. Srinivasan, Efficient and Flexible Fair Scheduling of Real-time Tasks on Multiprocessors, Ph.D. Dissertation, University of North Carolina at Chapel Hill, December 2003.

Jim Anderson 25 Multiprocessor Fair Scheduling References (Continued) A. Srinivasan and J. Anderson, Optimal rate-based scheduling on multiprocessors, Proceedings of the 34th ACM Symposium on Theory of Computing, pp , May A. Srinivasan and J. Anderson, Efficient scheduling of soft real-time applications on multiprocessors, Journal of Embedded Computing (to appear), special issue of best papers from the 15th Euromicro Conference on Real-time Systems, Preliminary version appeared in Proceedings of the 15th Euromicro Conference on Real-time Systems, pp , July A. Srinivasan and J. Anderson, Fair scheduling of dynamic task systems on multiprocessors, Journal of Systems and Software (to appear), special issue of best papers from the 11th International Workshop on Parallel and Distributed Real-time Systems, A. Srinivasan, P. Holman, and J. Anderson, Integrating aperiodic and recurrent tasks on fair- scheduled multiprocessors, Proceedings of the 14th Euromicro Conference on Real-time Systems, pp , June A. Srinivasan, P. Holman, J. Anderson, and S. Baruah, The case for fair multiprocessor scheduling, Proceedings of the 11th International Workshop on Parallel and Distributed Real-time Systems, April 2003 (on CD ROM).