hasso-plattner-institut für softwaresystemtechnik gmbh an der universität potsdam multiprocessor...

24
HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic Tasks using Time-Independent Priorities” Alexander Küchler

Post on 19-Dec-2015

225 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

HASSO-PLATTNER-INSTITUTfür Softwaresystemtechnik GmbH an der Universität Potsdam

Multiprocessor Scheduling

“Global Multiprocessor Scheduling of Aperiodic Tasks using Time-

Independent Priorities”

Alexander Küchler

Page 2: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

2

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

Agenda

Definitions

Previous work

Problems, assumptions and goals

Results

‘Calculating’ Uthreshold

Strategy for using the bound

References

Page 3: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

3

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

Definitions I

Global/dynamic scheduling = a process can be migrate from one processor to another at run-time (assumption: no penalty for migration)

Aperiodic tasks = subgroup of periodic tasks, where no statements for arrival can be made

Time-independent priorities = assigned priority does not depend of its absolute arrival time

Preemptive scheduling = a task can be interrupted and continued later

Page 4: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

4

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

Definitions II Multiprocessor with m processors and a set of n

independent tasks Each task Tn has

an arrival time An a worst-case execution time Cn

a deadline Dn, a synthetic utilization Un=Cn/Dn

a priority Pn

Total utilization U is the sum of all Un of tasks that

have arrived but not yet reached their deadline

Page 5: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

5

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

Definitions III

V(t) is a task set with Ai≤t<Ai+Di

Synthetic utilization is

/i

iT V t

US t U m

Page 6: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

6

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

Previous work I

(1) shows categorization of time-independent and non-time-independent scheduling policies for aperiodic tasks

(2) shows optimal utilization bound of

for liquid tasks (Ci0 and Ci/Di0) on

multiprocessor machines

(3) shows avoidance of Dhall’s effect for periodic tasks

by dividing tasks into two categories (UiUthreshold(m) = heavy; Ui Uthreshold (m) = light)

1

11

2

Page 7: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

7

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

Previous work I – Dhall’s effect

Page 8: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

8

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

Previous work II

(4) shows similar problem for periodic tasks with a result of ln(1+y)=(1-y)/(1+y) which is approx. 37,482% for m

Page 9: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

9

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

Problems, assumptions and goals

Problems: Dhall’s effect shows that deadline monotonic priority

assignment may lead to missed deadlines even if U is very low

Assumptions: Preemptive scheduling is possible Time-independent priorities for each task (depending

on C and D, not A!)

Goals: All tasks in the task set meet their deadlines

Page 10: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

10

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

Results I

Optimal utilization is a function of the number of processors m:

with

Uthreshold has two meanings: threshold for synthetic utilization in the admission

control of incoming tasks: accept or reject threshold for categorization of light and heavy tasks

2

2

3 2 7 8 2 for 1

1threshold

m m mU m m m

m

3 7 35.425% for thresholdU m m

Page 11: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

11

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

Results II

Uthreshold is an always valid bound (but not always

optimal for all multiprocessors)

Generalize previous single-processor results [1] to multiprocessors

Extend previous multiprocessor results by considering not only liquid tasks [2] which are a special case of the generalized formulas

Page 12: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

12

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

‘Calculating’ Uthreshold I

The idea behind the calculation is that one: compute US(t) for a worst-case critically schedulable

task pattern this depends on the number of processors and is a

function of x=Un=Cn/Dn

The calculation based upon one lemma and two theorem’s …

Page 13: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

13

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

‘Calculating’ Uthreshold II

Lemma 1: A task Tx and a task pattern where each Ti that has higher priority than Tx has Ai≥Ax can be modified to a task pattern with same US(t) and block interference on Tx

Page 14: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

14

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

‘Calculating’ Uthreshold II (Lemma 1)

Page 15: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

15

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

‘Calculating’ Uthreshold II (Theorem 1)

Theorem 1: There is a worst-case critically schedulable task pattern, such that no task Ti in this task pattern has an arrival time Ai<An: that means that we can disregard all tasks with an early arrival, because they do not influence the block interference

Page 16: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

16

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

‘Calculating’ Uthreshold II (Theorem 1)

Page 17: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

17

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

‘Calculating’ Uthreshold II (Theorem 1)

Page 18: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

18

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

‘Calculating’ Uthreshold II (Theorem 1)

Page 19: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

19

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

‘Calculating’ Uthreshold II (Theorem 2)

Theorem 2: Create m copies of each task disregarding Tn, the load on each processor is identical reduce of the problem to a single-processor case

Page 20: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

20

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

‘Calculating’ Uthreshold III

Important: by splitting each task into m new tasks block interference from high priority tasks occurs

[1] shows the worst-case how to handle the problem An quadratic equation will be solved to get an optimal

utilization bound for the single-processor case from [1] Regard for the problem of heavy tasks: m heavy tasks

with large D may lead to missed deadlines priority assignment strategy to avoid Dhall’s effect:

1. consider high utilization 2. consider short deadline

Page 21: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

21

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

Strategy for using the bound I

Accept incoming tasks when current

An accepted task Ti is light if

Use m: accept incoming tasks when current

An accepted task Ti is light if

35,425%thresholdUS t U

i thresholdU U

thresholdUS t U m

i thresholdU U m

Page 22: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

22

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

Strategy for using the bound II

Keep track of among current tasks: accept incoming tasks if for liquid tasks: accept for [2]

In admission test: for very hard tasks with

increase US(t) with

only in the interval Ai≤t≤Ai+Di, so you reduce

synthetic utilization and can accept more tasks

max max iU U maxmUS t u U

1/ 1 1/ 2US t

2 thresholdU m /thresholdU m m

Page 23: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

23

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

References(1) “Schedulability Analysis and Utilization Bounds for Highly Scalable Real-

Time Services”; Abdelzaher/Lu

(2) “The Aperiodic Multiprocessor Utilization Bounds for Liquid Tasks”; Abdelzaher et.al

(3) “Static-priority scheduling on multiprocessors”; Andersson/Baruah/Jonsson

(4) “Analyzing Fixed-Priority Multiprocessor Scheduling”; Lundberg

Page 24: HASSO-PLATTNER-INSTITUT für Softwaresystemtechnik GmbH an der Universität Potsdam Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic

Multiprocessor SchedulingProf. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

24

H ASSO -PLATTN ER -IN STITU Tfür Softwaresystem technik G m bH an der Universität Potsdam

Alexander Küchler715659

Questions?

Thank you very much for your attention.

Any questions left?

Ask me!