scheduling aperiodic and sporadic j obs
play

Scheduling Aperiodic and Sporadic J obs Def init ions Comparison - PDF document

CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Scheduling Aperiodic and Sporadic J obs Def init ions Comparison t o t radit ional scheduling of asynchronous event s Polling Server Def ererable Server Sporadic


  1. CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Scheduling Aperiodic and Sporadic J obs • Def init ions • Comparison t o t radit ional scheduling of asynchronous event s • Polling Server • Def ererable Server • Sporadic Server • Generalized Processor Sharing • Const ant Ut ilizat ion Server • Tot al Bandwidt h Server • Preempt ive Weight ed Fair Queueing Scheduling Aperiodic and Sporadic J obs • When variat ions in int er-release t imes and execut ion t imes are small: – can t reat t ask as periodic t ask T=(p s , e s ) , and schedule it accordingly. • What about sporadic j obs? can arrive at any t ime execut ion t imes vary widely deadlines are unkown a priori ? • Given: n periodic t asks T 1 , … , T i = (p i , e i ), … , T n priorit y-driven scheduling algorit hm • We want t o det ermine when t o execut e aperiodic and sporadic j obs, i.e., – sporadic j ob: accept ance t est scheduling of accept ed j ob – aperiodic j ob: schedule j ob t o complet e ASAP. 1

  2. CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Priorit y Queues f or Periodic/ Sporadic/ Aperiodic J obs reject Sporadic Acceptance Test Jobs Periodic Processor Jobs Aperiodic Jobs Scheduling Algorit hms, Overview Scheduling Aperiodic (Sporadic) Jobs: Non-Real-Time Systems Real-Time Systems Background Slack Stealing Interrupt-Driven Bandwidth Preserving Polled 2

  3. CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Background/ I nt errupt -Driven vs. Slack St ealing • Background: – Aperiodic j ob queue has always lowest priorit y among all queues. – Periodic t asks and accept ed j obs always meed deadlines. – Simple t o implement . – Execut ion of aperiodic j obs may be unduly delayed. • I nt errupt -Driven: – Response t ime as short as possible. – P eriodic t asks may miss some deadlines. • Slack St ealing: – P ost pone execut ion of periodic t asks only when it is saf e t o do so: • Well-suit ed f or clock-driven environment s. • What about priorit y-driven environment s? (quit e complicat ed) Examples = T ( 3 , 1 ) 1 A : r = 0.1 , e = 2.1 = T ( 10 , 4 ) Background: 2 Interrupt-Driven: Slack Stealing: 3

  4. CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Polled Execut ion vs. Bandwidt h Preserving Servers • Polling server (p s , e s ) : scheduled as periodic t ask. p s : Poller ready f or execut ion every p s t ime unit s. e s : Upper bound on execut ion t ime. • Terminology: – (Execut ion) budget : e s – Replenishment : set budget t o e s at beginning of period. – Poller consumes budget at rat e 1 while execut ing aperiodic j obs. – Poller exhaust s budget whenever poller f inds aperiodic queue empt y. – Whenever t he budget is exhaust ed, t he scheduler removes t he poller f rom periodic queue unt il replenished. • Bandwidt h-preserving server algorit hms: – I mprove upon polling approach – Use periodic servers – Are def ined by consumpt ion and replenishment rules. Example: Polling Server Rate-Monotonic: A : r = 2.8, e = 1.7 PS =(3, 1) T 1 =( φ =2, 3.5, 1.5) T 2 =( φ =0, 6.5, 0.5) budget 4

  5. CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Def errable Servers • Rules: – Consumpt ion: Execut ion budget consumed only when server execut es. – Replenishment : Execut ion budget of server is set t o e s at each mult iple of p s . • Preserves budget when no aperiodic j ob is ready. • Any budget held prior t o replenishment is lost (no cumulat ion). Example: Def errable Server wit h RM Rate-Monotonic: A : r = 2.8, e = 1.7 DS =(3, 1) T 1 =( φ =2, 3.5, 1.5) T 2 =( φ =0, 6.5, 0.5) budget 5

  6. CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Example: Def errable Server wit h EDF EDF: A : r = 2.8, e = 1.7 DS=(3,1) T 1 =( φ =2,3.5,1.5) T 2 =( φ =0,6.5,0.5) budget Combinat ion of Def er able Server wit h Background Server A : r = 2.8, e = 1.7 serve in background! DS=(3,1) T 1 =( φ =2,3.5,1.5) T 2 =( φ =0,6.5,0.5) budget 6

  7. CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Why not I ncrease t he Budget ? DS=(3,1) T 1 =(3.5,1.5) T 2 =(6.5,0.5) Schedulabilit y f or St at ic-Priorit y Syst ems (DS has highest priorit y) • Lemma: I n a st at ic-priorit y periodic syst em wit h D i < = p i , wit h a def erable server T DS (p s , e s ) wit h highest priorit y, a crit ical inst ant f or T i happens when: (1) r i,c = t 0 f or some j ob J i,c in T i . (2) j obs of higher-priorit y t asks are released at t ime t 0 . (3) budget of (backlogged) server is e s at t ime t 0 . (4) next replenishment t ime is t 0 +e s . • I nt uit ively: Low-priorit y t asks suf f er f rom a “back-t o-back” hit by t he def erable server. 7

  8. CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Time-Demand Analysis  −    − i 1 t e ∑ t = + + +  s    w ( t ) e e e e i i s s k     p p = s k 1 k • Schedulable Ut ilizat ion: – Generally, no known schedulable ut ilizat ion. – Only except ion: • p s < p 1 < p 2 < … < p n < 2p s • p i = D i • r at e-monot onic scheduling • p n > p s + e s – For t his case, t he schedulable ut ilizat ion is   1   + − u 2 n 1 = − −  s  U ( n ) ( n 1 ) 1 + RM / DS   u 1 s   Def erable Ser ver s and Ar bit r ar y St at ic Pr ior it y • Problem: Any budget t hat is not consumed at end of server period is lost . • Maximum amount of t ime DS can consume depends on – Release t ime of all periodic j obs (wit h respect t o replenishment t imes) – Execut ion t imes of all t asks. • Upper bound on t ime demand f or lower-priorit y t asks t han DS :  −    − ∑ i 1 t e t ≤ + + +  s    w ( t ) e e e e i i s s k     p p = k 1 s k • Mult iple def erable servers: – Time demand f or t ask wit h priorit y lower t han m DS ’s:   −     − m i 1 ∑  t e  ∑ t ≤ + + + +  s , q    w ( t ) e e 1 e e   , i i s   s q k    p  p   = = q 1 s , q k 1 k 8

  9. CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Using t he Schedulable Ut ilizat ion: • Assume t hat T i has lower priorit y t han server. • T DS (p s , e s ) behaves like a periodic t ask (p s , e s ) , except t hat it may execut e f or at most e s addit ional t ime unit s during t he int erval (r i,c , r i,c +D i ) . + e b i ∑ + + ≤ + u u U ( i 1 ) s i k s X p = k 1 i • Example: scheduling algorithm • T 1 : not affected by T DS T ( 3 , 0 . 6 ) 1 T ( 4 , 0 . 8 ) 2 e ∑ + + = ≤ = DS u u s 0 . 66 0 . 7797 U ( 3 ) • T 2 : k s p RM T ( 5 , 0 . 5 ) k = 1 2 2 no! T ( 7 , 1 . 4 ) 3 e ∑ + + = ≤ = 3 u u s 0 . 8143 0 . 757 U ( 4 ) • T 3 : k s p RM k = 1 3 Schedulabilit y f or Deadline-Driven Syst ems • Lemma: A periodic t ask T i in a syst em of n independent , preempt ive periodic t asks is schedulable wit h a DS wit h period p s , execut ion t ime e s , and ut ilizat ion u s , according t o t he EDF algorit hm if  −  e p e n ∑ +  +  ≤ u 1 1 k s s   s min( D , p ) D   = k 1 k k i 9

  10. CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Proof Proof: • Let t be the deadline of some Job J i,c . • Let t -1 be the last point in time before t where either processor idle, or was executing a lower-priority task (deadline after t ). J ic misses deadline here! ... e s e s e s e s t -1 +e s t -1 t p s If J ic misses deadline at time t , total amount of processor time consumed by Deferrable Server during interval ( t -1 , t ] is bounded by :  − −  t t e + e − 1 s e   s s p   s Proof (I I ) P roof : • Time consumed by def errable server:  − −  − − t t e t t e − = + ≤ + = − + − w ( t t ) e − s e e − s e u ( t t p e )  1  1 − − DS 1 s s s s s 1 s s  p  p s s • Time consumed by Task T k :  −  t t − = ≤ − w ( t t ) e − 1 e ( t t ) / p   − − k 1 k p k 1 k   k • We used “f loor” inst ead of “ceiling” because last invocat ion has deadline af t er t . • We miss deadline if we don’t have enough t ime t o f inish by t ime t : e n ∑ − < − + − + − t t ( t t ) u ( t t p e ) k − − s − s s 1 p 1 1 = k 1 k • Divide by (t – t -1 ) and go f rom t here. 10

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend