Top Banner
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
24

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

Dec 19, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
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!