BITS Pilani
Hyderabad Campus
Real Time Scheduling in
Multi-core systems
By
Mayank Garg
2013H140040H
UNDER THE SUPERVISION OF
K C S MURTHI
DEPARTMENT OF COMPUTER ENGINEERING
BITS Pilani, Hyderabad Campus
CONTENTS
Mayank Garg Slide 2
Partitioned Fixed-priority Real-time Scheduling Based
on Dependent Task-Split On Multicore Platform
Mixed-Criticality Real-Time Scheduling for Multicore System
Task Scheduling of Real-time Systems on Multi-Core Architectures
HISTORY OF E-NOSE
A Shared Cache-aware Hybrid Real-time Scheduling
on Multicore Platform with Hierarchical Cache
CONCLUSIONS
RESEARCH STUDY
A User space Library for Multicore Real-Time Scheduling
A Simple Power-Aware Scheduling for Multicore Systems
when Running Real-Time Applications
REFERENCES
BITS Pilani, Hyderabad Campus
 Real Time Scheduling
 Need of Multicore systems
 Global Scheduling: Task can execute on any processor at any
time.
 Partitioned Scheduling: Tasks are statically allocated to
processors and migration of tasks among processors is not allowed.
 Single core System
 Multi core Systems
Introduction
Mayank Garg Slide 3
BITS Pilani, Hyderabad Campus
 Throughput
 Latency
 Turnaround Time
 Response time
Fairness
Waiting Time
Mayank Garg Slide 4
BITS Pilani, Hyderabad Campus
To scheduling the tasks with precedence constraints,
he partition them into the independent tasks first.
The precedence relationship is denoted by the task
graph which is directed and no-loop.
Mayank Garg Slide 5
Task Scheduling of Real-time Systems on
Multi-Core Architectures
BITS Pilani, Hyderabad Campus
We use a two-level hierarchical scheduling approach in our mixed criticality
architecture. Our architecture assumes a similar five level
classification.
If the job completes before its budget is exhausted, it becomes a ghost job,
ghost jobs are viewed identically to normal jobs a similar five-level
classification.
Mayank Garg Slide 6
Mixed-Criticality Real-Time Scheduling for
Multicore System
BITS Pilani, Hyderabad Campus
This design methodology comprises two stages: tasks
dispatch and (sub) tasks assignment.
For tasks dispatch, an efficient algorithm B-tree Dependent
Tasks dispatch (BDTD) is proposed aiming at dispatching tasks on
individual cores and converting a set of dependent tasks into a
series of sequential subtasks, there upon the interrelated sub-tasks
path is obtained as well as synthetic deadlines.
Tasks assignment takes advantage of algorithm B-tree
Dependent Task Split (BDTS) to solve how dependent tasks
decompose to derive a high utilization.
Mayank Garg Slide 7
Partitioned Fixed-priority Real-time
Scheduling Based on Dependent Task-Split On
Multicore Platform
BITS Pilani, Hyderabad CampusMayank Garg Slide 8
Partitioned Fixed-priority Real-time Scheduling
Based on Dependent Task-Split On Multicore
Platform (cont.)
BITS Pilani, Hyderabad Campus
The main idea of the improved algorithm:
First, assigning each task a priority according to their deadline.
If no pre-emptive task, original task keep running until finished.
When task finished, checking whether there is an urgent task.
if there is scheduled it in the next schedule, if no urgent tasks,
dispatching the task on the head of the ready queue.
Mayank Garg Slide 9
A Shared Cache-aware Hybrid Real-time
Scheduling on Multicore Platform with
Hierarchical Cache
BITS Pilani, Hyderabad Campus
The scheduler pursues to minimize the number of transitions
by increasing or decreasing the voltage and frequency of all the
cores at the same time.
Frequency increases when it is required to satisfy the time
requirements of real-time tasks.
On the other hand, when a task finishes its execution, if its
computation time can be guaranteed, the frequency is reduced.
Mayank Garg Slide 10
A Simple Power-Aware Scheduling for
Multicore Systems when Running Real-
Time Applications
BITS Pilani, Hyderabad CampusMayank Garg Slide 11
A Shared Cache-aware Hybrid Real-time
Scheduling on Multicore Platform with
Hierarchical Cache (cont.)
BITS Pilani, Hyderabad Campus
He is trying to demonstrate by empirical process that a user
space library can support the class of resource allocation, with
latencies and overheads that are sufficiently small as to make his
library relevant for a subset of future real-world real time
applications.
While his library is currently a proof-of concept research effort.
Mayank Garg Slide 12
A User space Library for Multicore Real-Time
Scheduling
BITS Pilani, Hyderabad CampusMayank Garg Slide 13
A User space Library for Multicore Real-Time
Scheduling (Cont.)
Schematic of overall architecture. This application is scheduled across one cluster
of four processors. “w.t.” stands for “worker thread.” Note how worker threads
perform the role of “virtual CPUs” for real-time tasks.
BITS Pilani, Hyderabad CampusMayank Garg Slide 14
I have studied many research perspective and
technologies for getting a better understanding about this
topic.
I have analysed that many of these are good
scheduling algorithm in some constraint but they are fit for
overall design. So I like to find an algorithm which can give
almost optimal output for overall system.
My research proposal is to find an optimal scheduling
algorithm for overall design of Multi-core Real Time System
and implement it.
BITS Pilani, Hyderabad Campus
Thank You!!
Mayank Garg
Slide 15
Link to connect with author:
http://www.slideshare.net/MayankGarg25
https://www.linkedin.com/in/gargmayank
http://www.researchgate.net/profile/Mayank_Garg6/
https://www.facebook.com/mayank17692?ref=hl
Copyright © Mayank Garg. All Rights Reserved

Real time system in Multicore/Multiprocessor system

  • 1.
    BITS Pilani Hyderabad Campus RealTime Scheduling in Multi-core systems By Mayank Garg 2013H140040H UNDER THE SUPERVISION OF K C S MURTHI DEPARTMENT OF COMPUTER ENGINEERING
  • 2.
    BITS Pilani, HyderabadCampus CONTENTS Mayank Garg Slide 2 Partitioned Fixed-priority Real-time Scheduling Based on Dependent Task-Split On Multicore Platform Mixed-Criticality Real-Time Scheduling for Multicore System Task Scheduling of Real-time Systems on Multi-Core Architectures HISTORY OF E-NOSE A Shared Cache-aware Hybrid Real-time Scheduling on Multicore Platform with Hierarchical Cache CONCLUSIONS RESEARCH STUDY A User space Library for Multicore Real-Time Scheduling A Simple Power-Aware Scheduling for Multicore Systems when Running Real-Time Applications REFERENCES
  • 3.
    BITS Pilani, HyderabadCampus  Real Time Scheduling  Need of Multicore systems  Global Scheduling: Task can execute on any processor at any time.  Partitioned Scheduling: Tasks are statically allocated to processors and migration of tasks among processors is not allowed.  Single core System  Multi core Systems Introduction Mayank Garg Slide 3
  • 4.
    BITS Pilani, HyderabadCampus  Throughput  Latency  Turnaround Time  Response time Fairness Waiting Time Mayank Garg Slide 4
  • 5.
    BITS Pilani, HyderabadCampus To scheduling the tasks with precedence constraints, he partition them into the independent tasks first. The precedence relationship is denoted by the task graph which is directed and no-loop. Mayank Garg Slide 5 Task Scheduling of Real-time Systems on Multi-Core Architectures
  • 6.
    BITS Pilani, HyderabadCampus We use a two-level hierarchical scheduling approach in our mixed criticality architecture. Our architecture assumes a similar five level classification. If the job completes before its budget is exhausted, it becomes a ghost job, ghost jobs are viewed identically to normal jobs a similar five-level classification. Mayank Garg Slide 6 Mixed-Criticality Real-Time Scheduling for Multicore System
  • 7.
    BITS Pilani, HyderabadCampus This design methodology comprises two stages: tasks dispatch and (sub) tasks assignment. For tasks dispatch, an efficient algorithm B-tree Dependent Tasks dispatch (BDTD) is proposed aiming at dispatching tasks on individual cores and converting a set of dependent tasks into a series of sequential subtasks, there upon the interrelated sub-tasks path is obtained as well as synthetic deadlines. Tasks assignment takes advantage of algorithm B-tree Dependent Task Split (BDTS) to solve how dependent tasks decompose to derive a high utilization. Mayank Garg Slide 7 Partitioned Fixed-priority Real-time Scheduling Based on Dependent Task-Split On Multicore Platform
  • 8.
    BITS Pilani, HyderabadCampusMayank Garg Slide 8 Partitioned Fixed-priority Real-time Scheduling Based on Dependent Task-Split On Multicore Platform (cont.)
  • 9.
    BITS Pilani, HyderabadCampus The main idea of the improved algorithm: First, assigning each task a priority according to their deadline. If no pre-emptive task, original task keep running until finished. When task finished, checking whether there is an urgent task. if there is scheduled it in the next schedule, if no urgent tasks, dispatching the task on the head of the ready queue. Mayank Garg Slide 9 A Shared Cache-aware Hybrid Real-time Scheduling on Multicore Platform with Hierarchical Cache
  • 10.
    BITS Pilani, HyderabadCampus The scheduler pursues to minimize the number of transitions by increasing or decreasing the voltage and frequency of all the cores at the same time. Frequency increases when it is required to satisfy the time requirements of real-time tasks. On the other hand, when a task finishes its execution, if its computation time can be guaranteed, the frequency is reduced. Mayank Garg Slide 10 A Simple Power-Aware Scheduling for Multicore Systems when Running Real- Time Applications
  • 11.
    BITS Pilani, HyderabadCampusMayank Garg Slide 11 A Shared Cache-aware Hybrid Real-time Scheduling on Multicore Platform with Hierarchical Cache (cont.)
  • 12.
    BITS Pilani, HyderabadCampus He is trying to demonstrate by empirical process that a user space library can support the class of resource allocation, with latencies and overheads that are sufficiently small as to make his library relevant for a subset of future real-world real time applications. While his library is currently a proof-of concept research effort. Mayank Garg Slide 12 A User space Library for Multicore Real-Time Scheduling
  • 13.
    BITS Pilani, HyderabadCampusMayank Garg Slide 13 A User space Library for Multicore Real-Time Scheduling (Cont.) Schematic of overall architecture. This application is scheduled across one cluster of four processors. “w.t.” stands for “worker thread.” Note how worker threads perform the role of “virtual CPUs” for real-time tasks.
  • 14.
    BITS Pilani, HyderabadCampusMayank Garg Slide 14 I have studied many research perspective and technologies for getting a better understanding about this topic. I have analysed that many of these are good scheduling algorithm in some constraint but they are fit for overall design. So I like to find an algorithm which can give almost optimal output for overall system. My research proposal is to find an optimal scheduling algorithm for overall design of Multi-core Real Time System and implement it.
  • 15.
    BITS Pilani, HyderabadCampus Thank You!! Mayank Garg Slide 15 Link to connect with author: http://www.slideshare.net/MayankGarg25 https://www.linkedin.com/in/gargmayank http://www.researchgate.net/profile/Mayank_Garg6/ https://www.facebook.com/mayank17692?ref=hl Copyright © Mayank Garg. All Rights Reserved