multiprocessor real-time scheduling jing ma 马靖. classification partitioned scheduling in the...

19
Multiprocessor Real-time Scheduling Jing Ma 马马

Upload: melissa-dickerson

Post on 02-Jan-2016

237 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

Multiprocessor Real-time Scheduling

Jing Ma 马靖

Page 2: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

Classification

Partitioned SchedulingIn the partitioned approach, the tasks are statically partitioned among the processors, i.e., each task is assigned to a processor and is always executed on it.

MultiprocessorSchedulingalgorithm

Global SchedulingUnder global scheduling, it is permitted that a jobthat has previously been preempted from one processor resume execution at a later point in time upon a different processor.

Page 3: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

Uniprocessor Scheduling Algorithm

static1

dynamic but fixed within a job2

fully dynamic3

By priority:

Page 4: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

Rate Monotonic (RM) Scheduling

Assumption: All tasks that have hard deadlines are periodic. All tasks are independent. di=pi, for all tasks. ci is constant and is known for all tasks. The time required for context switching is negligible For a single processor with n tasks, the following

equation holds for the accumulated utilization µ:

)12( /1

1

nn

i i

i np

c

Page 5: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

Rate Monotonic (RM) Scheduling

The priority of a task is a monotonically decreasing function of its period.

At any time, a highest priority task among all those that are ready for execution is allocated.

If all assumptions are met, schedulability is guaranteed.

The idle capacity is not required if the period of all tasks is a multiple of the period of the highest priority task

Page 6: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

EDF scheduling

each time a new ready task arrives, it is inserted into a queue of ready tasks, sorted by their deadlines. If a newly arrived task is inserted at the head of the queue, the currently executing task is preempted

Page 7: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

EDF scheduling

Earlier deadline preemption

Later deadline no preemption

Page 8: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

LLF (Least Laxity First)

Priorities = decreasing function of the laxity (the less laxity, the higher the priority);

dynamically changing priority; preemptive.

Requires calling the scheduler periodically, and to recompute the laxity. Overhead for many calls of the scheduler and many context switches. Detects

missed deadlines early.

Requires calling the scheduler periodically, and to recompute the laxity. Overhead for many calls of the scheduler and many context switches. Detects

missed deadlines early.

Page 9: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

Partitioned Scheduling

Several polynomial-time heuristics have been proposed for solving this problem. (eg. FF and BF)

the worst-case achievable utilization on M processors for all of the heuristics (and also for an optimal partitioning algorithm) is only (M+1)/2, even when an optimal uniprocessor scheduling algorithm such as EDF is used.

Page 10: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

Classification

1

no migrationIn partitioned scheduling algorithms, the set of tasks is partitioned into as many disjoint subsets as there are processors available, and each such subset is associated with a unique processor.

2

migration allowed (Restricted migration)Each job must execute entirely upon a single processor. However, different jobs of the same task may execute upon different processors.

3

unrestricted migration

Page 11: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

Different Scheduling Algorithm

Page 12: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

Global Scheduling

PD2PD2 incurs significant run-time overhead due to its quantum-based scheduling approach.

EKGEKG concentrates workloads on some processors due to the approach similar to partitioned scheduling.

LNREFenergy efficient compare to other algorithm

Page 13: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

fluid scheduling model

Page 14: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

T-N plane

Page 15: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

LNREF scheduling algorithm

Page 16: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

Future Trend (I guess)

Combine with other algorithmRT-DVFS(real-time dynamic voltage and frequency scaling)

Reduce Overhead

Uncertain Task Execution Time

Page 17: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

reference

Energy-efficient Optimal Real-Time Scheduling on Multiprocessors,Kenji Funaoka, Shinpei Kato, IEEE, 2008.19

Energy-Aware Scheduling for Real-Time Multiprocessor Systems with Uncertain Task Execution Time, Changjiu Xian, Yung-Hsiang Lu, Zhiyuan Li, DAC, June 4-8 2007

Scheduling Algorithms and Operating Systems Support for Real-Time Systems, Krithi Ramamritham, John A. Stankovic, IEEE Vol 82, No. 1, January 1994

An Optimal Real-Time Scheduling Algorithm for Multiprocessors, Hyeonjoong Cho, Binoy Ravindran, 27th IEEE International Real-Time System Symposium, 2006

http://www.cise.ufl.edu/~prabhat/Teaching/cis6930-s09/slides/softwareComponents.ppt

Page 18: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned

问题?

Page 19: Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned