Download presentation
Presentation is loading. Please wait.
Published byErica Warner Modified over 9 years ago
1
Computer Science & Engineering, ASU1/17 Pfair Scheduling of Periodic Tasks with Allocation Constraints on Multiple Processors Deming Liu and Yann-Hang Lee
2
Computer Science & Engineering, ASU2/17 Contributions Give a polynomial-time pfair schedulability test of periodic tasks over multiple processors with arbitrary allocation constraints Propose an approximate scheduling algorithm for fixed tasks
3
Computer Science & Engineering, ASU3/17 Basics of Proportionate Fairness (pfair) n periodic tasks to be scheduled over m identical processors Task constraint – at any time, no task can run on more than one processor All input parameters of any task x are integers Period p x, execution time e x, release time etc. Pfair (proportionate fairness) Task x receives either w x t or w x t serving time in [0, t], where w x = e x / p x Tasks make progress in a steady rate
4
Computer Science & Engineering, ASU4/17 Allocation Constraints Allocation constraint A task can only run on a given subset of processors An instance is defined as a tuple {T, R, {P(x)|x T }} T is a set of n periodic tasks R is a ser of m identical processors P is a allocation constraint function defined as P : T subsets of R such that for x T, P(x) R represents the subset of processors on which task x can be executed
5
Computer Science & Engineering, ASU5/17 Schedulability with Arbitrary Allocation Constraints For , assuming w x 1 and Theorem 1. Instance is pfair schedulable if and only if there exists a set of nonnegative numbers w(x, r) ( x T, r R ) such that
6
Computer Science & Engineering, ASU6/17 Proof by Constructing a Graph Proof of Theorem 1 Applying max-flow theory to a constructed digraph G = (V, E) representing the scheduling problem V = V 0 V 1 V 2 V 3 V 4 V 5 V 0 = {source}. V 1 = { 1, x, i | x T, i [0, w x L)}. V 2 = { 2, x, j | x T, j [0, L)}. V 3 = { 3, x, j | x T, j [0, L)}. V 4 = { 4, r, j | r R, j [0, L)}. V 5 = {sink}.
7
Computer Science & Engineering, ASU7/17 Proof by Constructing a Graph E = E 0 E 1 E 2 E 3 E 4 E 0 = {(source, 1, x, i , 1) | x T, i [0, w x L)}. E 1 = {( 1, x, i , 2, x, j , 1) | x T, i [0, w x L), j [earliest(x, i), latest(x, i)]} earliest(x, i) (latest(x, i)) is the earliest (latest) time slot at which subtask i of task x can run E 2 = {( 2, x, j , 3, x, j , 1) | x T, j [0, L)}. E 3 = {( 3, x, j , 4, r, j , 1) | x T, r P(x), j [0, L)}. E 4 = {( 4, r, j , sink, 1) | r R, j [0, L)}.
8
Computer Science & Engineering, ASU8/17 An Example of Graph Construction An example T = {x 0, x 1, x 2, x 3 } and R = {r 0, r 1, r 2 }. TaskPeriodExecution time WeightAllocation constraint x0x0 530.6 r 0, r 1 x1x1 540.8 r 0, r 1 x2x2 540.8No x3x3 540.8No
9
Computer Science & Engineering, ASU9/17 An Example of Graph Construction The constructed graph for the example of scheduling problem
10
Computer Science & Engineering, ASU10/17 Properties of the Constructed Graph Lemma 1 – A pfair schedule exists for iff there is a flow of size of mL in G If there is a fractional flow of size mL, then there is an integral flow of size mL The max flow of G is mL Lemma 2 – There is a flow of size mL iff there exists a set of numbers w ( x, r ) ( x T, r R ), Construct a fractional flow of size mL to G [3] Let w ( x, r ) correspond to Where f ( e ) denotes the flow of edge e The max flow of G is mL
11
Computer Science & Engineering, ASU11/17 Proof of the Schedulability Test Condition Theorem 1 follows by applying Lemma 1 and Lemma 2
12
Computer Science & Engineering, ASU12/17 Polynomial Time Pfair Schedulability Test Checking existence of the set of w ( x, r ) ( x T, r R ), can be done in O((n+m) 3 ) Similarly, construct a bipartite digraph of n+m+2 vertices [3] w ( x, r ) is mapped to edge flow in the graph Max-flow can be found by O((n+m) 3 )
13
Computer Science & Engineering, ASU13/17 An Example of Polynomial Time Schedulability Test
14
Computer Science & Engineering, ASU14/17 On-Line Approximate Pfair Scheduling Although schedulability test is solved, on-line pfair scheduling for any allocation constraints is still a challenge Let us consider special allocation constraints, fixed tasks Fixed task – A task can only run on a given processor
15
Computer Science & Engineering, ASU15/17 The Approximate Scheduling Algorithm All the fixed tasks on a processor are combined to a supertask X with weight w X An approximate algorithm – HPA (hierarchical pfair algorithm) Global scheduling – Use PD 2 algorithm [J. Anderson et al.] to schedule all migrating tasks and supertasks Local scheduling – On the time slots allocated to a supertask X in global scheduling, schedule the fixed tasks in X using uniprocessor pfair scheduling algorithm
16
Computer Science & Engineering, ASU16/17 Uniprocessor Pfair Scheduling Uniprocessor pfair scheduling – Similar to non- preemptive non-idling EDF A subtask i, i N, of task x can only be eligible to run at or after time instant i/w x (the beginning of time slot i/w x ) At any time slot, one of eligible subtasks is selected to run according to EDF policy, where the deadline of subtask i, i N, of task x is defined as the time instant ( i +1)/ w x (inside time slot ( i +1)/ w x -1) The upper (lower) limit of the window of a subtask of a fixed task in X under HPA is not 1 / w X less (greater) than the upper (lower) limit of the ideal pfair window of the subtask The deviation from ideal pfair is bounded
17
Computer Science & Engineering, ASU17/17 An Application of Pfair Scheduling PFRR (parallel fair round robin) packet scheduling for switching networks Multiple channels exist in links, e.g., WDM n sessions share m channels Parallel packet scheduling in WDM switching networks Session 1 Session 2 Session n Scheduler Channel 1 … Channel 2 Channel m
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.