Analyzing FixedPriority Global Multiprocessor Scheduling Seminar Multiprocessor Scheduling
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 • US-LIMIT = 0, 37482 § Summary Tobias Queck 2 Multiprocessor Scheduling
Problem Definition - Partition - Priorities - Definitions
Partioned versus global scheduling § Partioned • A task is assigned ones to only one processor § Global • Task migration is permitted Assumption: no penalty associated with task migration One task can use more the one processor But only one at any given time Tobias Queck 4 Multiprocessor Scheduling
Priority driven scheduling algorithms § Preemptive vs. Non-Preemprive • 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 Tobias Queck 5 Multiprocessor 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 Tobias Queck 6 Multiprocessor Scheduling
Fixed-Priority Scheduling - Rate-monotonic Scheduling (RMS) - Dhall’s effect - Bound on utilization bounds
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) Tobias Queck 8 Multiprocessor Scheduling
Dhall’s Effect t 1: C 1=1 T 1=4 U 1=25% t 2: C 2=1 T 2=4 U 2=25% t 3: C 3=4 T 3=5 U 3=80% misses deadline m = 2, US = (25%+80%)/2 = 65% Tobias Queck 9 Multiprocessor Scheduling
Dhall’s Effect t 1: C 1=1 T 1=4 U 1=25% t 2: C 2=1 T 2=4 U 2=25%. . . tn-1: Cn-1=1 Tn-1=4 Un-1=25% tn: Cn=4 Tn=5 Un=80% misses deadline m = n-1, US = ((n-1)*25% + 80%)/m = 25% Tobias Queck 10 Multiprocessor Scheduling
Dhall’s Effect t 1: C 1=1 T 1=8 U 1=12, 5% t 2: C 2=1 T 2=8 U 2=12, 5%. . . tn-1: Cn-1=1 Tn-1=8 Un-1=12, 5% tn: Cn=8 Tn=9 Un=88% misses deadline m=n-1, US=12, 5% Tobias Queck 11 Multiprocessor Scheduling
Dhall’s Effect t 1: C 1=1 T 1=x U 1=0% t 1: C 1=1 T 1=x U 2=0%. . . tn-1: Cn-1=1 Tn-1=x Un-1=0% tn: Cn=x Tn=x+1 Un=100% misses deadline m=n-1, US 0% with infinitely large x Tobias Queck 12 Multiprocessor Scheduling
Bound on utilization bounds t 1: C 1=1 =2 T 1=4 U 1=25% =50% t 2: C 2=1 =2 T 2=4 U 2=25% =50% t 3: C 3=1 =2 T 3=4 U 2=25% =50% t 4: C 4=1 =2 T 4=4 U 44 -=25% =50% m=3 “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] Tobias Queck 13 Multiprocessor Scheduling
RM-US[US-LIMIT] - Idea - Example - Finding optimal US-LIMIT
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]: Tobias Queck 15 Multiprocessor Scheduling
Example § Processors m = 3 § Scheduling Algorithm RM-US[0, 429] § Task set: 2 3 1 3 Tobias Queck 16 Multiprocessor 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). • • • Tobias Queck 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) 17 Multiprocessor Scheduling
Finding optimal US-LIMIT (2) § Definition: § Following Situation: Tobias Queck 18 Multiprocessor Scheduling
Finding optimal US-LIMIT (3) § Calculating US-LIMIT Tobias Queck 19 Multiprocessor 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-LIMi. T Tobias Queck 20 Multiprocessor Scheduling
Comparison and Conclusion Tobias Queck 21 Multiprocessor Scheduling
Thank you for your attention - References - Questions?
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. Tobias Queck 23 Multiprocessor Scheduling
- Slides: 23