Distributed Process Scheduling- Real Time Scheduling Csc8320(Fall 2013)

Slides:



Advertisements
Similar presentations
Washington WASHINGTON UNIVERSITY IN ST LOUIS Real-Time: Periodic Tasks Fred Kuhns Applied Research Laboratory Computer Science Washington University.
Advertisements

Real Time Scheduling.
EE5900 Advanced Embedded System For Smart Infrastructure
Chapter 7 - Resource Access Protocols (Critical Sections) Protocols: No Preemptions During Critical Sections Once a job enters a critical section, it cannot.
Priority Inheritance and Priority Ceiling Protocols
Introduction to Embedded Systems Resource Management - III Lecture 19.
Priority INHERITANCE PROTOCOLS
Real-Time Mutli-core Scheduling Moris Behnam. Introduction Single processor scheduling – E.g., t 1 (P=10,C=5), t 2 (10, 6) – U= >1 – Use a faster.
1 EE5900 Advanced Embedded System For Smart Infrastructure RMS and EDF Scheduling.
CS5270 Lecture 31 Uppaal, and Scheduling, and Resource Access Protocols CS 5270 Lecture 3.
CPE555A: Real-Time Embedded Systems
Courseware Scheduling of Distributed Real-Time Systems Jan Madsen Informatics and Mathematical Modelling Technical University of Denmark Richard Petersens.
CSE 522 Real-Time Scheduling (3)
Real-Time Scheduling CIS700 Insup Lee October 3, 2005 CIS 700.
Task Allocation and Scheduling n Problem: How to assign tasks to processors and to schedule them in such a way that deadlines are met n Our initial focus:
Module 2 Priority Driven Scheduling of Periodic Task
Soft Real-Time Semi-Partitioned Scheduling with Restricted Migrations on Uniform Heterogeneous Multiprocessors Kecheng Yang James H. Anderson Dept. of.
Towards Feasibility Region Calculus: An End-to-end Schedulability Analysis of Real- Time Multistage Execution William Hawkins and Tarek Abdelzaher Presented.
Courseware Basics of Real-Time Scheduling Jan Madsen Informatics and Mathematical Modelling Technical University of Denmark Richard Petersens Plads, Building.
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.
CprE 458/558: Real-Time Systems
Misconceptions About Real-time Computing : A Serious Problem for Next-generation Systems J. A. Stankovic, Misconceptions about Real-Time Computing: A Serious.
Multiprocessor Real- Time Scheduling Aaron Harris CSE 666 Prof. Ganesan.
Introduction to Embedded Systems
Introduction to Embedded Systems Rabie A. Ramadan 6.
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.
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.
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.
Real Time Scheduling Telvis Calhoun CSc Outline Introduction Real-Time Scheduling Overview Tasks, Jobs and Schedules Rate/Deadline Monotonic Deferrable.
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.
Static Process Scheduling Section 5.2 CSc 8320 Alex De Ruiter
5 May CmpE 516 Fault Tolerant Scheduling in Multiprocessor Systems Betül Demiröz.
6. Application mapping 6.1 Problem definition
- 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.
B. RAMAMURTHY 12/25/2015 Realtime System Fundamentals : Scheduling and Priority-based scheduling Pag e 1.
1 Real-Time Scheduling. 2Today Operating System task scheduling –Traditional (non-real-time) scheduling –Real-time scheduling.
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
Real time scheduling G.Anuradha Ref:- Stallings. Real time computing Correctness of the system depends not only on the logical result of computation,
Introduction to Embedded Systems Rabie A. Ramadan 5.
CSCI1600: Embedded and Real Time Software Lecture 23: Real Time Scheduling I Steven Reiss, Fall 2015.
Dynamic Priority Driven Scheduling of Periodic Task
Introduction to Real-Time Systems
Sandtids systemer 2.modul el. Henriks 1. forsøg m. Power Point.
For a good summary, visit:
Undergraduate course on Real-time Systems Linköping University TDDD07 Real-time Systems Lecture 2: Scheduling II Simin Nadjm-Tehrani Real-time Systems.
Real-Time Operating Systems RTOS For Embedded systems.
Embedded System Scheduling
Multiprocessor Real-Time Scheduling
Scheduling and Resource Access Protocols: Basic Aspects
Wayne Wolf Dept. of EE Princeton University
Unit OS9: Real-Time and Embedded Systems
EEE 6494 Embedded Systems Design
Realtime System Fundamentals : Scheduling and Priority-based scheduling B. Ramamurthy cse321-fall2014 9/20/2018.
Realtime Scheduling Algorithms
Realtime System Fundamentals : Scheduling and Priority-based scheduling B. Ramamurthy cse321-fall /27/2018.
Real Time Scheduling Mrs. K.M. Sanghavi.
CSCI1600: Embedded and Real Time Software
Multiprocessor and Real-Time Scheduling
CSCI1600: Embedded and Real Time Software
Operating System , Fall 2000 EA101 W 9:00-10:00 F 9:00-11:00
Presentation transcript:

Distributed Process Scheduling- Real Time Scheduling Csc8320(Fall 2013)

Outline Introduction Basic Scheduling Techniques Some papers

Real Time Systems ● Systems in which the correctness of the systems depends not only on the logical results but also on the time at which the results are produced ● Real-time tasks have more deterministic properties when compared to tasks in general computer systems. ● Characterized by deadline, release time and execution time ● Examples: Forest Fire, Traffic Control, Smart environment

Types of Real Time Systems Hard real time systems  Must always meet all deadlines  System fails if deadline window is missed Soft real time systems  Must try to meet all deadlines  Will execute if deadline is missed  System does not fail if a few deadlines are missed Firm real time systems  Result has no use outside deadline window  Tasks that fail are discarded

Real time tasks Periodic ● Each task is repeated at a regular interval ● Max execution time is the same each period ● Arrival time is usually the start of the period ● Deadline is usually the end ● Aperiodic ● Each task can arrive at any time

Real time scheduling algorithms Global scheme each occurrence of a real-time task may be executed on a different processor Partitioning scheme enforces that all occurrences of a particular task are executed on the same processor Partitioning schemes are less complex since the overhead of multiprocessor scheduling merely consists in assigning tasks to processors If the assignment of tasks to processors is completed, well-known uni-processor scheduling algorithms can be used for each processor.

Real-Time Scheduling Dynamic Computed at run-time based on tasks arrival Dynamic priorities are determined during run-time Static Done at compile time for all tasks Static scheduling assigns priorities prior to run-time

Some types of real-time scheduling: 1. Rate Monotonic Scheduling ● Simplest type of real time scheduling ● Tasks are periodic, with hard deadlines ● Tasks are logically independent tasks ● No communication or data sharing ● Tasks are scheduled according to priority and task priorities are fixed ● Computation time is known and constant

Contd.. ● Higher priorities usually assigned to tasks with smaller periods ● If T(h) PR(i), where T indicates the task and PR indicates the priority. Rate Monotonic Priority Assignment: Calculates the critical instant for each task. Occurs when task Ti and all higher priority tasks are scheduled simultaneously If tasks deadline scheduled at critical instant, then the task can always meet its deadline.

2. Deadline Monotonic Tasks with shorter deadlines get higher priority. If D(h) PR(i), where D indicates the deadline

3. Dynamic Scheduling Tasks are Aperiodic – Tasks arrive at unknown intervals due to an event Real time priorities vary during the system’s execution. Priorities are reevaluated when events such as task arrivals, events/signals causing preemption, or task completions occur

4. EDF: Earliest Deadline First Dynamic Scheduling Assume a preemptive system with dynamic priorities The task with the earliest absolute deadline executes first. If a tie between Hard/Soft real-time task, hard deadline runs first.

Real Time Synchronization Required when tasks are not independent and need to share information and synchronize If two tasks want to access the same data, semaphores are used to ensure non-simultaneous access Potential Issues  Priority Inversion – A situation in which a higher priority job is blocked by lower priority jobs for an indefinite period of time  Chain Blocking – A situation in which more than two resources are available and a high priority task is blocked off from both because of two or more lower priority tasks holding locks on one or both of the resources.

Priority Inheritance Protocol ● PIP eliminates priority inversion problem ● Increases the priority of a task to the maximum priority task waiting for the locked resource ● i.e. If a lower priority task T(k) has a lock on a resource required by a higher priority task T(h), then the priority of the lower task is increased to the priority of the higher task ● Once the lock is released the task resumes back its original priority

Priority Ceiling Protocol ● Each resource lock is assigned a priority ceiling, which is the priority equivalent to the highest priority task which may lock the resource. ● PCP eliminates chain blocking ● A task can acquire a lock on resource lock S only if no other task holds a lock on resource R. Thus higher priority tasks will not be blocked through both S and R ● If a high priority task is blocked through a resource, then the task holding that resource gets the priority of the high priority task. Once the resource is released, the priority is reset back to its original

Some works 2001 – Energy Efficient Real-Time Scheduling[2] ● Introduced Variable Voltage Processing ● Based on the Earliest Deadline First algorithm ● Algorithm: ● Considered historical processor utilization in order to adjust voltage on processor to meet real-time deadlines ● Called Slacked EDF ● Energy Savings of 53%

Some Works 2011 – Dynamic Voltage and Frequency Scaling for RT Scheduling on Prioritized SMT Processor[3] ● Introduced Task Migration across processors ● Utilized system heuristics to determine voltage and frequency ● Reduces power consumption up to 30%

Some Works 2011 – Global EDF-based Energy Efficient Real- Time Scheduling in Multicore Platforms[4] ● Most Real-time algorithms assume Worst Case Execution Time (WCET) ● Proposed Average Case with “Slack Time” ● Uses slacktime to adjust frequency of processor during off-peak usage ● Energy savings ~10%

Recent Work 2013 – Online Real-Time Task Scheduling in Heterogeneous Multicore System-on-a-Chip[5] online heterogeneous dual-core scheduling framework for dynamic workloads with real-time constraints Algorithm: Deadline Assignment: Each task i is assigned a processor density Si, and a bandwidth server size Ui. The deadlines of processor and co-processor subtasks are assigned by the density and the server size of the corresponding task, respectively The deadline assignment follows the concepts of bandwidth server. Scheduling Rule: Each task is accepted when it has passed admission control, and then each subtask of the task is assigned a local deadline by deadline assignment. Subtasks are scheduled with their local deadlines in the processor by a preemptively deadline-driven scheduler. Subtasks are scheduled by the corresponding bandwidth server on preemption points of the allocated co-processor.

References [1]Chow, Randy, et. al.,Distributed Operating Systems & Algorithms, Addison Wesley, March 18, 1997 [2]Sinha, A.; Chandrakasan, A.P., Energy Efficient real-time scheduling, 2001 [3]Fujii, K.; Chishiro, H.; Matsutani, H.; Yamasaki, N., Dynamic Voltage and Frequency Scaling for Real-time Scheduling on a Prioritized SMT Processor, 2011 [4]Zhang, D.; Chen, F.; Jin, S., Global EDF-based Online, Energy-efficient Real-time Scheduling in Multi-core Platform, 2011 [5] Ya-Shu Chen; Han Chiang Liao; Ting-Hao Tsai, "Online Real-Time Task Scheduling in Heterogeneous Multicore System-on-a-Chip," Parallel and Distributed Systems, IEEE Transactions on, vol.24, no.1, pp.118,130, Jan. 2013