Semi-Federated Scheduling of Mixed-Criticality System for Sporadic - - PowerPoint PPT Presentation

semi federated scheduling of mixed criticality
SMART_READER_LITE
LIVE PREVIEW

Semi-Federated Scheduling of Mixed-Criticality System for Sporadic - - PowerPoint PPT Presentation

Semi-Federated Scheduling of Mixed-Criticality System for Sporadic DAG Tasks Tao Yang 1 , Yue Tang 2 , Xu Jiang 2 , Qingxu Deng 1 , Nan Guan 2 1 Northeastern University, China, 2 The Hong Kong Polytechnic University, Hong Kong 2019/5/16 NEU &


slide-1
SLIDE 1

2019/5/16

Semi-Federated Scheduling of Mixed-Criticality System for Sporadic DAG Tasks

NEU & Polyu 1

Tao Yang1, Yue Tang2, Xu Jiang2, Qingxu Deng1, Nan Guan2

1Northeastern University, China, 2The Hong Kong Polytechnic University, Hong Kong

slide-2
SLIDE 2

2019/5/16 NEU & Polyu 2

⚫Background & Contributions ⚫Preliminaries ⚫Semi-Federated Mixed-Criticality Algorithm ⚫Evaluation

Outline

slide-3
SLIDE 3

2019/5/16 NEU & Polyu 3

⚫Background & Contributions ⚫Preliminaries ⚫Semi-Federated Mixed-Criticality Algorithm ⚫Evaluation

Outline

slide-4
SLIDE 4

2019/5/16 NEU & Polyu 4

Mixed-Criticality Systems

Sub-systems with different criticality levels (e.g. avionics):

⚫ Monitoring and control sub-system ⚫ Anti-collision sub-system ⚫ Navigation sub-system ⚫ … ⚫ Infotainment sub-system

high low

slide-5
SLIDE 5

2019/5/16 NEU & Polyu 5

Mixed-Criticality Systems

Characteristics :

  • More complex functions of system
  • No reduction in system security requirements

Challenges:

  • Multicore: no enough analytical techniques
  • Task parallelization: dependencies and competitions among tasks
slide-6
SLIDE 6

2019/5/16 NEU & Polyu 6

Facing the problem

How to assign computation resources to parallel tasks on a multicore platform while guaranteeing security ?

slide-7
SLIDE 7

2019/5/16 NEU & Polyu 7

Our work Propose a semi-federated mixed-criticality scheduling algorithm

  • Propose a mapping algorithm: from mixed-criticality tasks to a

middleware layer (mixed-criticality container tasks)

  • Prove the schedulablity of our proposed algorithm
slide-8
SLIDE 8

2019/5/16 NEU & Polyu 8

⚫Background & Contributions ⚫Preliminaries ⚫Semi-Federated Mixed-Criticality Algorithm ⚫Evaluation

Outline

slide-9
SLIDE 9
  • Implicit-deadline sporadic parallel
  • Each task is denoted by a directed acyclic graph

✓ Vertices: sequential subtasks ✓ Edges: dependencies

  • Two types: low-criticality and high-criticality

2019/5/16 NEU & Polyu 9

Mixed-Criticality Task Model

v0 v1 v2 v3 v4 v5

slide-10
SLIDE 10

2019/5/16 NEU & Polyu 10

Mixed-Criticality Task Model

  • WCET of a vertex (subtask): 𝑑𝑂 and 𝑑𝑃
  • WCET of a task: 𝐷𝑂 and 𝐷𝑃
  • The longest chain of a task: 𝑀𝑂 𝑏𝑜𝑒 𝑀𝑃
  • Deadline of a task: 𝐸
  • Virtual deadline of a task: 𝐸′
  • Task utilization: 𝑣𝑂 = 𝐷𝑂

𝐸′ 𝑣𝑃 = 𝐷𝑃 𝐸 − 𝐸′

v0 v1 v2 v3 v4 v5

slide-11
SLIDE 11

2019/5/16 NEU & Polyu 11

Existing work: Federated Mixed-Criticality Scheduling

  • In the worst case, half of the resources are wasted

𝟐 + 𝝑 𝟐 + 𝝑 𝟐 + 𝝑

  • Task types: LH, HVH, HMH
  • System states: normal state and critical state
  • Assigning strategy: independently usable cores to each task

in the normal and critical states.

slide-12
SLIDE 12

2019/5/16 NEU & Polyu 12

⚫Background & Contributions ⚫Preliminaries ⚫Semi-Federated Mixed-Criticality Algorithm ⚫Evaluation

Outline

slide-13
SLIDE 13

2019/5/16 NEU & Polyu 13

Architecture of Our Algorithm

Dispatcher: Mapping algorithm

Semi-Federated Mixed-Criticality Algorithm:

  • Two-level hierarchical scheduling

framework

Top Bottom

slide-14
SLIDE 14

2019/5/16 NEU & Polyu 14

Architecture of Our Algorithm

Dispatcher: Mapping algorithm

Semi-Federated Mixed-Criticality Algorithm:

  • Two-level hierarchical scheduling

framework

  • Top-level calculates the mapping from

mixed-criticality tasks to mixed-criticality container-tasks.

Top

slide-15
SLIDE 15

Dispatcher: Mapping algorithm

2019/5/16 NEU & Polyu 15

Architecture of Our Algorithm Semi-Federated Mixed-Criticality Algorithm:

  • Two-level hierarchical scheduling

framework

  • Top-level calculates the mapping from

mixed-criticality tasks to mixed- criticality container-tasks.

  • Bottom-level schedules mixed-

criticality container-tasks on physical processors.

Bottom

slide-16
SLIDE 16

2019/5/16 NEU & Polyu 16

Mixed-Criticality Container Task

Dispatcher: Mapping algorithm

  • Processor resources interface
slide-17
SLIDE 17

2019/5/16 NEU & Polyu 17

Mixed-Criticality Container Task

Dispatcher: Mapping algorithm

  • Processor resources interface
  • Calculate number of mixed-

criticality container tasks in both normal states and critical states

slide-18
SLIDE 18

2019/5/16 NEU & Polyu 18

Mixed-Criticality Container Task

Dispatcher: Mapping algorithm

  • Processor resources interface
  • Semi-federated:

Mixed-criticality container tasks provide virtual resources, so the number of mixed-criticality task can be decimal, avoiding resource waste

slide-19
SLIDE 19

2019/5/16 NEU & Polyu 19

Mixed-Criticality Container Task

Dispatcher: Mapping algorithm

  • Processor resources interface
  • If the WCET of a task equals c

when it executes on a unit speed processor, then its WCET on a container-task with speed σ is:

𝒖 = 𝒅 𝝉

slide-20
SLIDE 20

2019/5/16 NEU & Polyu 20

Mapping Algorithm A mixed-criticality task

𝑑𝑤0

𝑂 = 1 𝑑𝑤0 𝑃 = 2,

𝑑𝑤1

𝑂 = 1 𝑑𝑤1 𝑃 = 3

𝑑𝑤2

𝑂 = 1 𝑑𝑤2 𝑃 = 3,

𝑑𝑤3

𝑂 = 1 𝑑𝑤3 𝑃 = 3

𝑑𝑤4

𝑂 = 1 𝑑𝑤4 𝑃 = 3,

𝑑𝑤5

𝑂 = 1 𝑑𝑤5 𝑃 = 2

𝐸 = 13, 𝐸′ = 5

v0 v1 v2 v3 v4 v5

slide-21
SLIDE 21

2019/5/16 NEU & Polyu 21

Mapping Algorithm A mixed-criticality task

v0 v1 v2 v3 v4 v5

𝐷𝑂 = 6, 𝐷𝑃= 16, 𝑀𝑂= 3, 𝑀𝑃= 7 𝑑𝑤0

𝑂 = 1 𝑑𝑤0 𝑃 = 2,

𝑑𝑤1

𝑂 = 1 𝑑𝑤1 𝑃 = 3

𝑑𝑤2

𝑂 = 1 𝑑𝑤2 𝑃 = 3,

𝑑𝑤3

𝑂 = 1 𝑑𝑤3 𝑃 = 3

𝑑𝑤4

𝑂 = 1 𝑑𝑤4 𝑃 = 3,

𝑑𝑤5

𝑂 = 1 𝑑𝑤5 𝑃 = 2

𝐸 = 13, 𝐸′ = 5

slide-22
SLIDE 22

2019/5/16 NEU & Polyu 22

Mapping Algorithm A mixed-criticality task

v0 v1 v2 v3 v4 v5

𝑣𝑂 = 𝐷𝑂 𝐸′ = 6 5 > 1 𝐷𝑂 = 6, 𝐷𝑃= 16, 𝑀𝑂= 3, 𝑀𝑃= 7 𝑑𝑤0

𝑂 = 1 𝑑𝑤0 𝑃 = 2,

𝑑𝑤1

𝑂 = 1 𝑑𝑤1 𝑃 = 3

𝑑𝑤2

𝑂 = 1 𝑑𝑤2 𝑃 = 3,

𝑑𝑤3

𝑂 = 1 𝑑𝑤3 𝑃 = 3

𝑑𝑤4

𝑂 = 1 𝑑𝑤4 𝑃 = 3,

𝑑𝑤5

𝑂 = 1 𝑑𝑤5 𝑃 = 2

𝐸 = 13, 𝐸′ = 5

slide-23
SLIDE 23

A mixed-criticality task

  • Calculating the mapping

2019/5/16 NEU & Polyu 23

Mapping Algorithm

v0 v1 v2 v3 v4 v5

𝐷𝑂 = 6, 𝐷𝑃= 16, 𝑀𝑂= 3, 𝑀𝑃 = 7, 𝐸 = 13, 𝐸′= 5 Using our mapping equation:

𝑻𝒋

𝑶 = ൞

𝑣𝑗

𝑂

when 𝑣𝑗

𝑂 < 1

𝐷𝑗

𝑂 − 𝑀𝑗 𝑂

𝐸𝑗

′ − 𝑀𝑗 𝑂

when 𝑣𝑗

𝑂 ≥ 1

𝑻𝒋

𝑷 = ൞

𝑗𝑔 𝑢𝑏𝑡𝑙 𝑗𝑡 𝑀𝑃 𝐷𝑗

𝑃 − 𝑇𝑗 𝑂𝐸𝑗 ′ − 𝑀𝑗 𝑃

𝐸𝑗 − 𝐸𝑗

′ − 𝑀𝑗 𝑃

𝑗𝑔 𝑢𝑏𝑡𝑙 𝑗𝑡 𝐼𝐽

slide-24
SLIDE 24

A mixed-criticality task

  • Calculating the mapping

2019/5/16 NEU & Polyu 24

Mapping Algorithm

𝑇𝑂 = 𝐷𝑂 − 𝑀𝑂 𝐸′ − 𝑀𝑂 = 6 − 3 5 − 3 = 𝟐. 𝟔 𝑇𝑃 = 𝐷𝑃 − 𝑇𝑂𝐸′ − 𝑀𝑃 𝐸 − 𝐸′ − 𝑀𝑃 = 16 − 1.5 ∗ 5 − 7 13 − 5 − 7 = 𝟐. 𝟔

v0 v1 v2 v3 v4 v5

𝐷𝑂 = 6, 𝐷𝑃= 16, 𝑀𝑂= 3, 𝑀𝑃 = 7, 𝐸 = 13, 𝐸′= 5

slide-25
SLIDE 25

A mixed-criticality task

2019/5/16 NEU & Polyu 25

Mapping Algorithm

Normal State 𝜏 = 1 𝜏 = 0.5 𝜏 = 1 𝜏 = 0.5 Critical State

Mapping

v0 v1 v2 v3 v4 v5

slide-26
SLIDE 26

2019/5/16 NEU & Polyu 26

  • Mixed-Criticality tasks are encapsulated into mixed-criticality

container-tasks

  • Scheduling these mixed-criticality container-tasks to physical

processors with a partitioned or global algorithm Runtime of a Mixed-Criticality Task

slide-27
SLIDE 27

v0 v1 v2 v3 v4 v5

2019/5/16 NEU & Polyu 27

Runtime of a Mixed-Criticality Task

  • Mixed-Criticality tasks are encapsulated into mixed-criticality

container-tasks

➢ Encapsulating the vertex v0

𝜏 =1 𝜏 = 0.5 Normal State 𝑑𝑤0

𝑂 = 1 𝑑𝑤0 𝑃 = 2,

𝑑𝑤1

𝑂 = 1 𝑑𝑤1 𝑃 = 3

𝑑𝑤2

𝑂 = 1 𝑑𝑤2 𝑃 = 3,

𝑑𝑤3

𝑂 = 1 𝑑𝑤3 𝑃 = 3

𝑑𝑤4

𝑂 = 1 𝑑𝑤4 𝑃 = 3,

𝑑𝑤5

𝑂 = 1 𝑑𝑤5 𝑃 = 2

slide-28
SLIDE 28

v0 v1 v2 v3 v4 v5

2019/5/16 NEU & Polyu 28

  • Mixed-Criticality tasks are encapsulated into mixed-criticality

container-tasks

➢ Setting the deadline of the mixed-criticality container-task

𝜏 =1 𝜏 = 0.5 Normal State deadline=1

Runtime of a Mixed-Criticality Task

𝑑𝑤0

𝑂 = 1 𝑑𝑤0 𝑃 = 2,

𝑑𝑤1

𝑂 = 1 𝑑𝑤1 𝑃 = 3

𝑑𝑤2

𝑂 = 1 𝑑𝑤2 𝑃 = 3,

𝑑𝑤3

𝑂 = 1 𝑑𝑤3 𝑃 = 3

𝑑𝑤4

𝑂 = 1 𝑑𝑤4 𝑃 = 3,

𝑑𝑤5

𝑂 = 1 𝑑𝑤5 𝑃 = 2

slide-29
SLIDE 29

v0 v1 v2 v3 v4 v5

2019/5/16 NEU & Polyu 29

  • Mixed-Criticality tasks are encapsulated into mixed-criticality

container-tasks

➢ Encapsulating the vertex v1

Normal State 𝜏 =1 𝜏 = 0.5 deadline=2

Runtime of a Mixed-Criticality Task

𝑑𝑤0

𝑂 = 1 𝑑𝑤0 𝑃 = 2,

𝑑𝑤1

𝑂 = 1 𝑑𝑤1 𝑃 = 3

𝑑𝑤2

𝑂 = 1 𝑑𝑤2 𝑃 = 3,

𝑑𝑤3

𝑂 = 1 𝑑𝑤3 𝑃 = 3

𝑑𝑤4

𝑂 = 1 𝑑𝑤4 𝑃 = 3,

𝑑𝑤5

𝑂 = 1 𝑑𝑤5 𝑃 = 2

slide-30
SLIDE 30

v0 v1 v2 v3 v4 v5

2019/5/16 NEU & Polyu 30

  • Mixed-Criticality tasks are encapsulated into mixed-criticality

container-tasks

➢ Encapsulating the vertex v5

Normal State 𝜏 =1 𝜏 = 0.5 deadline=5

Runtime of a Mixed-Criticality Task

𝑑𝑤0

𝑂 = 1 𝑑𝑤0 𝑃 = 2,

𝑑𝑤1

𝑂 = 1 𝑑𝑤1 𝑃 = 3

𝑑𝑤2

𝑂 = 1 𝑑𝑤2 𝑃 = 3,

𝑑𝑤3

𝑂 = 1 𝑑𝑤3 𝑃 = 3

𝑑𝑤4

𝑂 = 1 𝑑𝑤4 𝑃 = 3,

𝑑𝑤5

𝑂 = 1 𝑑𝑤5 𝑃 = 2

slide-31
SLIDE 31

2019/5/16 NEU & Polyu 31

  • Mixed-Criticality tasks are encapsulated into mixed-criticality

container-tasks

➢ State transition: normal -> critical

Runtime of a Mixed-Criticality Task

𝜏 =1 𝜏 = 0.5 Additional overload Normal State 𝑑𝑤0

𝑂 = 1 𝑑𝑤0 𝑃 = 2,

𝑑𝑤1

𝑂 = 1 𝑑𝑤1 𝑃 = 3

𝑑𝑤2

𝑂 = 1 𝑑𝑤2 𝑃 = 3,

𝑑𝑤3

𝑂 = 1 𝑑𝑤3 𝑃 = 3

𝑑𝑤4

𝑂 = 1 𝑑𝑤4 𝑃 = 3,

𝑑𝑤5

𝑂 = 1 𝑑𝑤5 𝑃 = 2

slide-32
SLIDE 32

2019/5/16 NEU & Polyu 32

Runtime of a Mixed-Criticality Task

Normal State 𝜏 =1 𝜏 = 0.5 Critical State 𝜏 =1 𝜏 = 0.5

5 5

slide-33
SLIDE 33

2019/5/16 NEU & Polyu 33

  • Mixed-Criticality tasks are encapsulated into mixed-criticality

container-task

➢ In critical states

Critical State 𝜏 =1 𝜏 = 0.5

v0 v1 v2 v3 v4 v5

Runtime of a Mixed-Criticality Task

deadline

5 5

𝑑𝑤0

𝑂 = 1 𝑑𝑤0 𝑃 = 2,

𝑑𝑤1

𝑂 = 1 𝑑𝑤1 𝑃 = 3

𝑑𝑤2

𝑂 = 1 𝑑𝑤2 𝑃 = 3,

𝑑𝑤3

𝑂 = 1 𝑑𝑤3 𝑃 = 3

𝑑𝑤4

𝑂 = 1 𝑑𝑤4 𝑃 = 3,

𝑑𝑤5

𝑂 = 1 𝑑𝑤5 𝑃 = 2

slide-34
SLIDE 34

2019/5/16 NEU & Polyu 34

  • Mixed-Criticality tasks are encapsulated into mixed-criticality

container-tasks

  • Scheduling these mixed-criticality container-task to physical

processor with a partitioned or global algorithm

➢ First, system is in normal state and only normal mixed-criticality container-tasks are scheduled ➢ When the system experiences state transition, all normal mixed-criticality container-tasks are banned from scheduling and only critical mixed-criticality container-tasks can run

Runtime of a Mixed-Criticality Task

slide-35
SLIDE 35

2019/5/16 NEU & Polyu 35

⚫Background & Contributions ⚫Preliminaries ⚫Semi-Federated Mixed-Criticality Algorithm ⚫Evaluation

Outline

slide-36
SLIDE 36

2019/5/16 NEU & Polyu 36

Evaluation

  • Our task sets are generated based on OpenMP benchmarks

and ompTG tool.

  • Evaluate the acceptance ratio of task sets with different

normalized utilizations.

  • We compare our results with those in existing work for

federated mixed-criticality scheduling.

slide-37
SLIDE 37

2019/5/16 NEU & Polyu 37

Evaluation

Semi-federated mixed-criticality algorithm has better schedulability performance

slide-38
SLIDE 38

2019/5/16 NEU & Polyu 38

Q&A

Thanks for your attention !