analyzing fixed-priority global multiprocessor scheduling

23
Analyzing Fixed-Priority Global Multiprocessor Scheduling Seminar Multiprocessor Scheduling May 22 2006 Tobias Queck

Upload: casper

Post on 10-Jan-2016

73 views

Category:

Documents


0 download

DESCRIPTION

Analyzing Fixed-Priority Global Multiprocessor Scheduling. Seminar Multiprocessor Scheduling May 22 2006 Tobias Queck. Content. Problem Definition Fixed-Priority Scheduling Rate-monotonic Scheduling (RMS) Dhall’s effect Bound on utilization bounds RM-US[US-LIMIT] US-LIMIT = 0,33 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Analyzing Fixed-Priority Global Multiprocessor Scheduling

Analyzing Fixed-Priority Global Multiprocessor

Scheduling

Analyzing Fixed-Priority Global Multiprocessor

Scheduling

Seminar Multiprocessor Scheduling

May 22 2006

Tobias Queck

Page 2: Analyzing Fixed-Priority Global Multiprocessor Scheduling

2Tobias QueckMultiprocessor

Scheduling

Content

Problem Definition

Fixed-Priority Scheduling• Rate-monotonic Scheduling (RMS)• Dhall’s effect• Bound on utilization bounds

RM-US[US-LIMIT]• US-LIMIT = 0,33• US-LIMIT = 0,37482

Summary

Page 3: Analyzing Fixed-Priority Global Multiprocessor Scheduling

Problem DefinitionProblem Definition

- Partition- Priorities- Definitions

Page 4: Analyzing Fixed-Priority Global Multiprocessor Scheduling

4Tobias QueckMultiprocessor

Scheduling

Partioned versus global scheduling

Partioned• A task is assigned ones to only one processor

Global• Task migration is permittedAssumption: no penalty associated with task migrationOne task can use more the one processorBut only one at any given time

Page 5: Analyzing Fixed-Priority Global Multiprocessor Scheduling

5Tobias QueckMultiprocessor

Scheduling

Priority driven scheduling algorithms

Preemptive• Tasks with low priority will be interrupted by incoming tasks

with higher priority

Static• Priorities for task are assigned ones

Dynamic• Priorities might change during runtime

vs. Non-Preemprive

Page 6: Analyzing Fixed-Priority Global Multiprocessor Scheduling

6Tobias QueckMultiprocessor

Scheduling

Problem definition

n independent tasks• Task ti (1 ≤ i ≤ n)

• Execution requirement Ci

• Period Ti

• Utilization Ui = Ci / Ti

multiprocessor with m identical processors .

A task set is schedulable if all tasks meet their deadlines (end of period) in all periods

/iUS U m

Page 7: Analyzing Fixed-Priority Global Multiprocessor Scheduling

Fixed-Priority SchedulingFixed-Priority Scheduling

- Rate-monotonic Scheduling (RMS)- Dhall’s effect- Bound on utilization bounds

Page 8: Analyzing Fixed-Priority Global Multiprocessor Scheduling

8Tobias QueckMultiprocessor

Scheduling

Rate-monotonic Scheduling

Algorithm• Priorities assigned inversely proportional to their periods

Proved Theorems [3]:• A critical instant for any task occurs whenever the task is

requested simultaneously with requests for all higher priority tasks.

• If a feasible priority assignment exists for some task set, the rate-monotonic priority assignment is feasible for the task set.

• For a set of m tasks with fixed priority order the least upper bound to processor utilization factor is U = m(21/m – 1)

Page 9: Analyzing Fixed-Priority Global Multiprocessor Scheduling

9Tobias QueckMultiprocessor

Scheduling

t3: C3=4 T3=5 U3=80%

t2: C2=1 T2=4 U2=25%

Dhall’s Effect

t1: C1=1 T1=4 U1=25%

m = 2, US = (25%+25%+80%)/2 = 65%

misses deadline

Page 10: Analyzing Fixed-Priority Global Multiprocessor Scheduling

10Tobias QueckMultiprocessor

Scheduling

tn: Cn=4 Tn=5 Un=80%

tn-1: Cn-1=1 Tn-1=4 Un-1=25%

t2: C2=1 T2=4 U2=25%

t1: C1=1 T1=4 U1=25%

Dhall’s Effect

m = n-1, US = ((n-1)*25% + 80%)/m = 25%

.

.

.

misses deadline

Page 11: Analyzing Fixed-Priority Global Multiprocessor Scheduling

11Tobias QueckMultiprocessor

Scheduling

tn: Cn=8 Tn=9 Un=88%

tn-1: Cn-1=1 Tn-1=8 Un-1=12,5%

t2: C2=1 T2=8 U2=12,5%

t1: C1=1 T1=8 U1=12,5%

Dhall’s Effect

m=n-1, US=12,5%

.

.

.

misses deadline

Page 12: Analyzing Fixed-Priority Global Multiprocessor Scheduling

12Tobias QueckMultiprocessor

Scheduling

Dhall’s Effect

t1: C1=1 T1=x U2=0%

m=n-1, US0% with infinitely large x

tn-1: Cn-1=1 Tn-1=x Un-1=0%

tn: Cn=x Tn=x+1 Un=100%

t1: C1=1 T1=x U1=0%

.

.

.

misses deadline

Page 13: Analyzing Fixed-Priority Global Multiprocessor Scheduling

13Tobias QueckMultiprocessor

Scheduling

t4: C4=2 T4=4 U4-=50%

t2: C2=2 T2=4 U2=50%

t1: C1=2 T1=4 U1=50%

t3: C3=2 T3=4 U2=50%

Bound on utilization bounds

“The utilization guarantee bound for any static-priority multiprocessor scheduling algorithm (partitioned or global) cannot be higher than 1/2 of the capacity of the multiprocessor platform.” [2]

t4: C4=1 T4=4 U4=25%

t2: C2=1 T2=4 U2=25%

t1: C1=1 T1=4 U1=25%

t3: C3=1 T3=4 U2=25%

m = 3

: 0,5 mit 1 1

( ) 0,5i i it C L e T L i m

m L US

Page 14: Analyzing Fixed-Priority Global Multiprocessor Scheduling

RM-US[US-LIMIT]RM-US[US-LIMIT]

- Idea - Example- Finding optimal US-LIMIT

Page 15: Analyzing Fixed-Priority Global Multiprocessor Scheduling

15Tobias QueckMultiprocessor

Scheduling

Idea

Task ti with Ui ≤ US-LIMIT• Lower priorities than tasks with Ui > US-LIMIT

• Priorities assigned according to the rate monotonic priority assignment scheme

Task ti with Ui > US-LIMIT• Highest priority

Proved Limit [2]: US-LIMIT 3 21US-LIMIT mit 3

mm

m

Page 16: Analyzing Fixed-Priority Global Multiprocessor Scheduling

16Tobias QueckMultiprocessor

Scheduling

Example

Processors m = 3 Scheduling Algorithm RM-US[0,429] Task set:

1 1

2 2

3 3

4 4

1,4 0,25

3,5 0,60

2,7 0,29

7,8 0,88

t U

t U

t U

t U

2 3 1 3

5

m

t0

Page 17: Analyzing Fixed-Priority Global Multiprocessor Scheduling

17Tobias QueckMultiprocessor

Scheduling

Finding optimal US-LIMIT

Select a task set such that the task set is not schedulable and such that there is no other unschedulable task set with a lower US (called extremal task set).

• m high prior tasks form block interference to a lower prior task (tn)

• All tasks are released first at the same time

• All m task are released two times within Tn

• m is infinitely large

• Ci = ∂ is infinitely small (1 ≤ i ≤ x)

• Ti = Tn - i∂ (1 ≤ i ≤ m)

Page 18: Analyzing Fixed-Priority Global Multiprocessor Scheduling

18Tobias QueckMultiprocessor

Scheduling

Finding optimal US-LIMIT (2)

Definition:

Following Situation:

11yUS LIMIT y

1,1 1,2 1,

1 , 1

, 1

1

1 , 0

,

n n

i

i i i m

C y T y

C i n

y x

n mx

T T T i i x

m x

Page 19: Analyzing Fixed-Priority Global Multiprocessor Scheduling

19Tobias QueckMultiprocessor

Scheduling

1

1 mit 1mx

n i

n ii

C CUS n mxmT m T

Finding optimal US-LIMIT (3)

Calculating US-LIMIT1

1

1nn i

n ii

C CUS T T m

11

xn

n i

CUS mT i

/

01

y

n

n i

CUS mT i

0

11

y

n

n

CUS dtmT t

ln 1n

n

CUS ymT

1 1 ln 11 1

1 0 ln 1 mit 1

y y yy m y

y y my

0,45473321765

0,37482252818

y

US

Page 20: Analyzing Fixed-Priority Global Multiprocessor Scheduling

20Tobias QueckMultiprocessor

Scheduling

Being able to schedule all task sets?

Three exhaustive cases

• All tasks have Ui ≤ US-LIMIT

• All tasks have Ui > US-LIMIT

• Some tasks have Ui > US-LIMIT and some have Ui ≤ US-LIMiT

Page 21: Analyzing Fixed-Priority Global Multiprocessor Scheduling

21Tobias QueckMultiprocessor

Scheduling

Comparison and Conclusion

[1]

Page 22: Analyzing Fixed-Priority Global Multiprocessor Scheduling

Thank you for your attentionThank you for your attention

- References- Questions?

Page 23: Analyzing Fixed-Priority Global Multiprocessor Scheduling

23Tobias QueckMultiprocessor

Scheduling

References

[1] Lars Lundberg, "Analyzing Fixed-Priority Global Multiprocessor Scheduling“, rtas, p. 145,  Eighth IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'02),  2002.

[2] B. Andersson, S. Baruah, and J. Jonsson, “Static-priority scheduling on multiprocessors”, in Proc. of the IEEE Real-Time Systems Symposium (RTSS'01), Dec. 3-6, 2001, London, pp. 193 - 202.

[3] C. L. Liu and J. W. Layland, “Scheduling algorithms for multiprogramming in a hard real-time environment”, Journal of the ACM, 20(1): 46-61, Jan. 1973.