Improving Multiprocessor Real-Time Systems with Bursty Inputs under Global EDF using Shapers Yue Tang 1 , Yuming Jiang 2 , Xu Jiang 1 , Nan Guan 1 1 The Hong Kong Polytechnic University 2 Norwegian University of Science and Technology
Outline • Motivation • Framework • Analysis Details • Evaluation 2019/5/16 2
Outline • Motivation • Framework • Analysis Details • Evaluation 2019/5/16 3
Motivation • • Bounded delay is essential for real-time systems Global EDF is a widely used scheduling strategy 2019/5/16 4
Motivation • • Bounded delay is essential for real-time systems Global EDF is a widely used scheduling strategy • How to calculate delay bound for GEDF? 2019/5/16 5
Motivation • • Bounded delay is essential for real-time systems Global EDF is a widely used scheduling strategy • How to calculate delay bound for GEDF? • Most work considers periodic tasks 2019/5/16 6
Motivation • • Bounded delay is essential for real-time systems Global EDF is a widely used scheduling strategy • How to calculate delay bound for GEDF? • Most work considers periodic tasks However • Bursty tasks are more general 2019/5/16 7
Motivation • Bursty tasks are more general in real applications I/O DSP I/O input stream output stream output stream input stream ECU FPGA I/O 2019/5/16 8
Motivation • • Bounded delay is essential for real-time systems Global EDF is a widely used scheduling strategy • How to calculate delay bound for GEDF? • Most work considers periodic tasks However • Bursty tasks are more general Possible solution? • Model bursty tasks as periodic tasks 2019/5/16 9
Motivation No ! • Does modeling bursty tasks as periodic tasks work for calculating delay bound? 0 5 9 10 11 15 20 25 30 35 t Choose the period of periodic tasks Overestimate workload → too pessimistic T = 1 ? Underestimate workload → wrong results (Assume D = 5, one task on uniprocessor) T = 5 ? In the extreme case, more than one job arrives simultaneously (e.g., 3 events at time 10) 0 5 10 15 20 25 30 35 t Can not set the period ! 2019/5/16 10
Motivation • • Bounded delay is essential for real-time systems Global EDF is a widely used scheduling strategy • How to calculate delay bound for GEDF? • Most work considers periodic tasks However • Bursty tasks are more general Possible solution? • Model bursty tasks as periodic tasks Our contribution ! • Change bursty tasks to periodic tasks using shapers 2019/5/16 11
Our Contribution • Use shapers to calculate delay bound for multiprocessors under global EDF • Design a heuristic algorithm to adjust the parameters of shapers for higher acceptance ratio 2019/5/16 12
Outline • Motivation • Framework • Analysis Details • Evaluation 2019/5/16 13
Framework system bursty shapers periodic scheduler 1 1 S P 1 1 2 2 Why our approach is correct? S P … 2 2 … P m m n S m 2019/5/16 14
Correctness system bursty shapers periodic scheduler 1 1 S P 1 1 2 2 S P … 2 2 … P m m n S m our calculated delay bound (changing bursty tasks as periodic) 2019/5/16 15
Correctness calculated delay bound (modeling bursty tasks as periodic) system bursty shapers periodic scheduler 1 1 S P 1 1 2 2 S P … 2 2 … P m m n S m our calculated delay bound (changing bursty tasks as periodic) 2019/5/16 16
Correctness calculated delay bound (modeling bursty tasks as periodic) system bursty shapers periodic scheduler 0 5 10 15 20 25 30 35 t 1 1 S P 1 1 2 2 S P … 2 2 … 0 5 10 15 20 25 30 35 t P m m n S Assume D = 5, one task on uniprocessor m If consider the delay bound at the scheduler → schedulable If consider the overall delay → unschedulable our calculated delay bound (changing bursty tasks as periodic) 2019/5/16 17
Outline • Motivation • Framework • Analysis Details • Evaluation 2019/5/16 18
System Model • • Task Model Scheduling strategy For each task, it has A more general global EDF scheduling Worst case execution time C Relative deadline only decides a task’s finish time Relative deadline D Priority indicator λ The priority of a task is decided by priority indicator Arrival curve α : maximum number of arrived events in any length of time interval 2019/5/16 19
Shaper • Behavior Process job sequences and force its output job sequences to confirm to some time constraints shaper • Shaper Component Shaping function σ Arrival curve α Output arrival curve α’ = α σ shaper • When generating periodic outputs, the shaper/shaping function is uniquely decided by period T. 2019/5/16 20
Shaper • Behavior Process job sequences and force its output job sequences to confirm to some time constraints shaper • Larger number of simultaneously arrived jobs → larger delay bound at the shaper • Smaller period of shaper → smaller delay bound at the shaper 2019/5/16 21
Global EDF Component • Model the global EDF (GEDF) scheduler as a GEDF component system (Decided by Caldelay function) bursty shapers periodic scheduler 1 1 S P 1 1 = = Global ( , ,..., ) ' ( ' , ' ,..., ' ) 1 2 m 1 2 m 2 2 EDF S P … 2 2 … component P m m S n m Delay = Caldelay (input tasks, analysis techniques) 2019/5/16 22
Model the System with Shapers • A system with shapers is modeled as a sequence of abstract components system system bursty 1 shapers periodic scheduler ' 1 1 S 1 1 1 S P 1 1 2 ' GEDF 2 2 2 2 S P S … 2 2 component … 2 … P m m m S n ' m m m S m 2019/5/16 23
How to Analyze (for given shapers) • Theorem For each task, the overall delay bound is equal to the sum of that at the shaper and that of the scheduler D i D i 2 1 system 1 ' 1 1 S 1 2 ' GEDF D i = D i 1 + D i 2 2 2 S component 2 … m ' m m S m D i 2019/5/16 24
How to Choose Shapers • For periodic outputs, the behavior is decided by the period of shapers • Why difficult to decide the period T D i D i 2 D i = D i 1 + D i 1 2 system ① Increase T → larger D i 1 , smaller D i 2 1 ' Decrease T → smaller D i 1 1 1 , larger D i S 2 1 ② The calculation D i 2 depends on other tasks 2 ③ Enumerating all possible values is low-efficient ' GEDF 2 2 S component 2 … • We propose a heuristic algorithm for higher acceptance ratio m ' m m S m D i 2019/5/16 25
Outline • Motivation • Framework • Analysis Details • Evaluation 2019/5/16 26
Evaluation (acceptance ratio) With simultaneously arrived jobs Without simultaneously arrived jobs The only one existing Proposed approach, setting work for bursty inputs the period of the shaper under global EDF based on the heuristic Proposed approach, setting Proposed approach, setting the period of the shaper the period of the shaper based on the input task arbitrarily 2019/5/16 27
Evaluation (normalized delay bound) With simultaneously arrived jobs Without simultaneously arrived jobs Proposed approach, setting the period of the shaper The normalized delay bound based on the heuristic is calculated based on that when setting the period based on the input The only one existing work for bursty inputs Proposed approach, setting under global EDF the period of the shaper arbitrarily 2019/5/16 28
Thanks for attention !
Recommend
More recommend