Multiple-Resource Periodic Scheduling Problem: how much fairness is necessary? - PowerPoint PPT Presentation

1 / 21
About This Presentation
Title:

Multiple-Resource Periodic Scheduling Problem: how much fairness is necessary?

Description:

... is supported by DARPA through the PARTS project. www.cs.pitt.edu/PARTS. 2 ... Computer Science Department University of Pittsburgh. B-Fair: A new approach. Idea ... – PowerPoint PPT presentation

Number of Views:44
Avg rating:3.0/5.0
Slides: 22
Provided by: zdk
Category:

less

Transcript and Presenter's Notes

Title: Multiple-Resource Periodic Scheduling Problem: how much fairness is necessary?


1
Multiple-Resource Periodic Scheduling Problem
how much fairness is necessary?
  • Dakai Zhu, Daniel Mossé and Rami Melhem

The work is supported by DARPA through the PARTS
project.
2
Preface
  • Power-aware computing for parallel systems
  • Frame based task sets
  • Shared Memory Systems
  • Traditional AND-model applications TPDS03
  • AND/OR-model applications to appear in TPDS
  • Distributed Systems IPDPS03
  • Periodic task sets
  • Global scheduler P-fair Baruah96

3
Problem
  • Scheduling
  • n periodic tasks, each task Ti with (ci , pi)
  • ci , pi are integers (i.e.,multiples of system
    time unit)
  • Weight wi ci / pi System U ?wi
  • m resources (m ? U)
  • Constraints at any time
  • One resource ? one task (resources are not
    shareable)
  • One task occupies one resource (tasks are not
    parallel)
  • Optimal
  • Full utilization (U m)
  • Scheduling overhead
  • Number of Context switches

4
Previous Work
  • EDF/RM dynamic/static priority
  • Optimal for single resource
  • The famous task set Dhall78
  • (n 1) tasks with (2?, 1) 1 task with (1, 1 ?)
  • U (2?(n-1) 1/(1 ?) )/n ? 0 with big n
  • Harmonic tasks periods are multiples of each
    other
  • Mancini94 and Khemka97

5
Previous Work (cont.)
  • PF proportional fairness Baruah96
  • Proportional progress for tasks at ANY time
  • At time t either ?wi t? or ?wi t?
  • Absolute allocation error less than one time
    unit
  • Optimal full utilization, U m
  • Variations of P-fair algorithms
  • PD Baruah95
  • PD2 Anderson01
  • ER-fair Anderson00

Scheduling decision at EVERY time unit !
6
An Example
  • T1(1, 3), T2(2, 5), T3(2, 5), T4(2, 3),
    T5(1, 5)
  • mU?wi 2, LCM 15
  • PF schedule Baruah96
  • 15 scheduling points
  • 27 context switches

Deadline miss only happens at period boundaries !
7
B-Fair A new approach
  • Idea
  • Schedule ONLY at period boundaries
  • Allocate resources to tasks for the time units
    within two consecutive boundaries
  • Maintain fairness at boundary time bk (B-Fair)
  • Ti get either ?wi bk ? or ?wi bk ?
  • Two-step allocation
  • Mandatory units to keep fairness
  • Optional units for future urgent tasks

8
The Example
  • T1(1, 3), T2(2, 5), T3(2, 5), T4(2, 3),
    T5(1, 5)

At boundary time 0 allocate 0 ? 3)
T1 T2 T3 T4 T5
R1
R2
0
1
2
3
4
5
6
7
8
10
9
11
12
13
14
15
9
BF Algorithm
  • Define a set of boundaries b0, , bL
  • bk lt bk1 b0 0, bL LCM
  • ?k, ?Ti, bk is a multiple of pi
  • At bk, we allocate bk , bk1)
  • Mandatory units
  • Optional units
  • mik max 0, ?RWik wi(bk1 bk)?
  • RWik Remaining work for Ti before bk
  • RWik wi bk allocated units for Ti
  • m(bk1 bk) gt ? mik

10
BF Algorithm (cont.)
  • Eligible tasks
  • Pending workPWikRWik wi(bk1 bk) - mik gt 0
  • Not fully allocated mik lt bk1 bk
  • Dynamic priority urgency of future
  • Character string
  • Time Factor (TF)

11
BF Algorithm (cont.)
  • For eligible tasks Ti and Tj
  • Compare ?(Ti, k) and ?(Ti, k)
  • Character by character gt 0 gt
  • Bigger string has higher priority
  • If tie and last character is 0 arbitrary
  • If tie and last character is
  • Compare time factor (TF)
  • smaller time factor has higher priority
  • If tie again arbitrary, e.g., smaller index
  • High priority tasks get one optional unit each

12
The Example (cont.)
  • T1(1, 3), T2(2, 5), T3(2, 5), T4(2, 3),
    T5(1, 5)

T1 T2 T3 T4 T5
Compared BF vs. PF Scheduling Points 7
vs. 15 Context Switches 24 vs. 27
R1
R2
0
1
2
3
4
5
6
7
8
10
9
11
12
13
14
15
13
Complexity of BF
  • For each scheduling point O(npmax)
  • Mandatory units allocation O(n)
  • Optional units O(npmax)
  • Priority compare O(pmax)
  • Linear selection from n tasks O(n) Blum73
  • Improved BF O(n)
  • Improve priority comparison O(1)
  • If ?k(Ti) ?k(Tj) , consider two
    counter-task with weight of 1-wi and 1-wj,
    respectively.
  • ?k(CTi) ?k(CTj) - compare their time
    factors (TF)
  • Bigger TF gets higher priority
  • Efficient P-fair PD has O(minn, m log n )
  • Baruah95

14
Number of Scheduling Points
  • Up to 100 tasks
  • Min period 10
  • Max period
  • 20 ? 100
  • LCM ? 232

15
Cycles per Scheduling Point
  • Up to 100 tasks
  • Min period 10
  • Max period 100
  • ci is randomly chosen from 1 to pi i.e., m ?
    n/2
  • Conservative implementation

16
Total Time to Generate Schedules
  • Up to 100 tasks
  • Min period 10
  • Max period 100
  • ci is randomly chosen from 1 to pi i.e., m ? n/2

17
Conclusion
  • Notion of boundary-fairness
  • BF is optimal full system utilization
  • Fewer scheduling points than P-fair algorithms
  • Complexity per scheduling point is O(n)
  • Comparable to PD O (min n, m log n )
  • Less total time to generate schedules
  • Compared with PD less than 100 tasks

18
Multiple-Resource Periodic Scheduling Problem
how much fairness is necessary?
  • Dakai Zhu, Daniel Mossé and Rami Melhem

19
Analysis of B-Fair
  • Ahead, behind, punctual task sets
  • RWik lt 0, gt 0, 0 respectively
  • Pre-ahead, pre-behind task set
  • PWik lt 0, gt 0 respectively

20
Analysis of B-Fair (cont.)
  • No tasks miss the deadline if m ? ? (wi)
  • When allocating bk , bk1) m ? (wi)
  • No over requirement
  • ? mik ? m(bk1 bk)
  • Enough eligible tasks
  • At least m(bk1 bk) ? mik
  • Otherwise, non-empty ahead set and behind set for
    each previous boundary, which contradicts at b0

21
Performance Evaluation (cont.)
  • Generally, prime number points are not scheduling
    point for B-Fair
  • Prime number theory big number x
  • x / ln(x) prime numbers smaller than x
  • LCM gt 1/lnLCM
  • 103 ? gt14.5
  • 106 ? gt7.24
  • 109 ? gt 5
Write a Comment
User Comments (0)
About PowerShow.com