a compositional analysis framework for hierarchical and

59
A Compositional Analysis Framework for Hierarchical and Partitioned Real -Time Systems Insup Lee PRECISE Center Department of Computer and Information Science University of Pennsylvania June 2, 2009 AFOSR FA9550-07-1-0216 (PM: Dr. David Luginbuhl)

Upload: others

Post on 25-Jan-2022

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A Compositional Analysis Framework for Hierarchical and

A Compositional Analysis Framework for Hierarchical and Partitioned Real

-Time Systems

Insup Lee PRECISE Center

Department of Computer and Information Science University of Pennsylvania

June 2, 2009

AFOSR FA9550-07-1-0216 (PM: Dr. David Luginbuhl)

Page 2: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5

Motivation and Goal

•  Embedded systems are becoming complex, networked, and large-scale.

•  Embedded systems have many para-functional aspects: –  physically coupled, real-time, location-aware, resource

-constrained, heterogeneous, and etc. –  real-time: required to react to events or complete tasks in specific

time –  resource-constrained: subject to operating with scarce resources,

such as processor power, memory, power, bandwidth •  Component-based approach for the design of large complex systems

–  Interoperability, predictability, scalability,… •  Goal: resource-sensitive component framework

–  Hierarchical, compositional, incremental

2

Page 3: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5

Component technologies •  Enable component-based development

– abstract components through interfaces •  Interfaces preserve intellectual property

– compose components preserving compositionality

–  facilitate modularity, portability, and reusability •  Traditional focus: functional, behavioral aspects

– need: non-functional aspects, such as timeliness, reliability, safety, and resource use

3

Page 4: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5

ARINC 653: Schedulability

Partition 1 Partition 2 Partition n . . .

Core module hardware

P11 ,…,P1m1 P21 ,…,P1m2 Pn1 ,…,Pnmn

Partition level schedule

Process level schedules

4

Page 5: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5

Abstraction and Composition •  Abstraction Problem: abstract the real-time

application as a component with an interface

•  Compute the minimum real-time requirements necessary for guaranteeing the schedulability of a component

Periodic (10,2)

EDF

Periodic (15,2)

Component interface

5

Page 6: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5

Abstraction and Composition •  Composition Problem: compose component-level

properties into system-level (or next-level component) properties

component interface

component interface

component interface

scheduling algorithm

6

Page 7: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 7

Compositionality •  Compositionality:

–  system-level properties can be established by composing independently analyzed component-level properties

•  Compositional reasoning based on assume/guarantee paradigm –  components are combined to form a system such that

properties established at the component-level still hold at the system level.

•  Compositional schedulability analysis using the demand/supply bounds –  Establish the system-level timing properties by

combining component-level timing properties through interfaces

Page 8: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5

Resource Satisfiability Analysis

•  Given a task set and a resource model, resource satisfiability analysis is to determine if, for every time,

resource demand, which a task set needs

under a scheduling algorithm

(minimum possible) resource supply ≤

8

Page 9: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5

Hierarchical Scheduling Framework

•  Resource allocation from parent to child

•  Notations –  Leaf → C1, C2, C3 – Non-leaf → C4, C5 – Root → C5

ARINC 653 → Two-level hierarchical framework

C1 EDF

C2 DM

C4 EDF

C3 EDF

C5 DM

Periodic tasks Sporadic tasks

Sporadic tasks

9

Page 10: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 10

OS Scheduler’s Viewpoint

CPU

OS Scheduler

Java Virtual Machine

J1(50,3) J2(75,5)

VM Scheduler

Multimedia

T2(33,10)

Digital Controller

T1(25,5) Real-Time Task

Real-Time Demand

Page 11: A Compositional Analysis Framework for Hierarchical and

Resource Demand Models

Page 12: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 12

Real-time demand composition •  Combine real-time requirements of multiple tasks

into real-time requirement of a single task

Real-Time Constraint

Real-Time Constraint

Real-Time Constraint

Periodic Task

Periodic Task

Periodic Task

EDF / RM

Page 13: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 13

Non-composable periodic models? •  What are right abstraction levels for real-time components?

(period, execution time)

•  P1 = (p1,e1); e.g., (3,1) •  P2 = (p2,e2); e.g., (7,1) •  What is P1 || P2?

–  (LCM(p1,p2), e1*n1 + e2*n2); e.g., (21,10) where n1*p1 = n2*p2 = LCM(p1,p2)

•  What is the problem? –  beh(P1) || beh(P2) = beh(P1||P2)?

•  Compositionality –  (P1 || P2) || P3 = P || P3, where P = P1 || P2

Page 14: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 14

Resource Demand Bound •  Resource demand bound during an interval of length t

–  dbf(W,A,t) computes the maximum possible resource demand that W requires under algorithm A during a time interval of length t

•  Periodic task model T(p,e) [Liu & Layland, ’73] –  characterizes the periodic behavior of resource demand with

period p and execution time e –  Ex: T(3,2)

0 1 2 3 4 5 6 7 8 9 10

t dem

and

Page 15: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 15

•  For a periodic workload set W = {Ti(pi,ei)}, –  dbf (W,A,t) for EDF algorithm [Baruah et al.,‘90]

Demand Bound - EDF

dbf (W,EDF,t) =tpi

Ti∈W∑ ⋅ ei

0 1 2 3 4 5 6 7 8 9 10

t dem

and

Page 16: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5

Demand-based Schedulability Analysis •  A periodic task set is schedulable under EDF

if and only if dbf(t) ≤ t ≤

∀t > 0over the periodic resource model Γ(P,Q)

[Baruah, et. al., ‘90]

t

reso

urce

t

dbf(t)

lsbf(t) [Shin and Lee, 2003]

lsbf(t)

16

Page 17: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5

Demand bound revisited •  More than one resource model may be used

– Consider only LSBF that intersect DBF •  An “optimal” choice from the component

perspective may be globally unsuitable

t

reso

urce

dbf(t)

lsbf(t)

17

Page 18: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 18

Task (resource demand) representations

Page 19: A Compositional Analysis Framework for Hierarchical and

Resource Supply Models

Page 20: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 20

Resource Modeling

•  Dedicated resource : always available at full capacity

•  Shared resource : not a dedicated resource –  Time-sharing : available at some times

–  Non-time-sharing : available at fractional capacity

0 time

0 time

0 time

Page 21: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 21

Resource Modeling •  Time-sharing resources

–  Bounded-delay resource model [Mok et al., ’01] characterizes a time-sharing resource w.r.t. a non-time-

sharing resource –  Periodic resource model Γ(Π,Θ) [Shin & Lee, RTSS

’03] characterizes periodic resource allocations - EDP model [Easwaran et all, RTSS 07]

0 1 2 3 4 5 6 7 8 9 time

Page 22: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 22

Resource Supply Bound •  Resource supply during an interval of length t

–  sbfR(t) : the minimum possible resource supply by resource R over all intervals of length t

•  For a single periodic resource model, i.e., Γ(3,2) – we can identify the worst-case resource allocation

0 1 2 3 4 5 6 7 8 9 10

t supp

ly

Page 23: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 23

Resource Supply Bound •  Resource supply during an interval of length t

–  sbfΓ(t) : the minimum possible resource supply by resource R over all intervals of length t

•  For a single periodic resource model Γ(Π,Θ)

0 1 2 3 4 5 6 7 8 9 10

t supp

ly

[ ]otherwise

)1(,2)1( if)1(

))(1()t(sbf

Θ−Π+Θ−Π+∈

Θ−

Θ−Π+−=Γ

kktkkt

Page 24: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 24

Resource Schedulability Analysis •  Schedulability analysis determines whether

scheduler

resource workload workload

resource demand, which a workload set

requires under a scheduling algorithm

resource supply, which available

resources provide ≤

Page 25: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 25

Schedulability conditions

lsbfΓ (t) =ΘΠ(t − 2(Π−Θ)

)

Bandwidth Starvation length

•  sbfΓ(t) : Supply bound function: Minimum resource supply of model Γ in any time interval of length t

•  lsbfΓ(t) : Linear lower bound of sbfΓ(t)

Page 26: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 26

Schedulability conditions

sbfΓ lsbfΓ

Bandwidth Θ/Π (slope of line)

Starvation length 2(Π-Θ)

Page 27: A Compositional Analysis Framework for Hierarchical and

The EDP Resource Model •  Explicit Deadline Periodic resource

•  Model: Ω = (Π,Θ,Δ) –  Explicit deadline Δ –  Θ resource units in Δ time units –  Repeat supply every Π time units

•  Properties –  Periodic resource model is a EDP model with Δ = Π –  Maximum slack of EDP model depends on Θ and Δ for a fixed Π –  Slack can be controlled using Δ without changing bandwidth of

model (within limits) –  Smaller bandwidth required to schedule the same component,

when compared to periodic resource models –  improves precision of resource allocation

6/2/09 S5 27

Page 28: A Compositional Analysis Framework for Hierarchical and

Supply bound function (sbfΩ)

0 time

Ω(5,3,4)

4 5 9

Starvation length = 3

6/2/09 S5

0 time

Γ(5,3)

4 5 9

Starvation length = 4

28

Page 29: A Compositional Analysis Framework for Hierarchical and

Bandwidth optimal interface •  Given component C and period Π

– Compute Θ and Δ

•  We use bandwidth optimality – Minimizes resource bandwidth Θ/Π – Occurs when Δ=Θ (Theorem 3.2 in RTSS’07)

6/2/09 S5 29

Page 30: A Compositional Analysis Framework for Hierarchical and

Bandwidth optimal interface

dbfC

sbfΩ’

minimum bandwidth for

model Ω’

Ω’ = (Π,Θ,Δ), Δ>Θ

6/2/09 S5 30

Page 31: A Compositional Analysis Framework for Hierarchical and

Bandwidth optimal interface

dbfC Θ  can be reduced

Ω = (Π,Θ,Θ)

6/2/09 S5 31

Page 32: A Compositional Analysis Framework for Hierarchical and

Bandwidth optimal interface

dbfC

sbfΩ

bandwidth optimal model Ω

Ω = (Π,Θ*,Θ*)

6/2/09 S5 32

Page 33: A Compositional Analysis Framework for Hierarchical and

Bandwidth-deadline optimal •  Choose interface with Largest Δ among all

bandwidth optimal interfaces – Reduced demand for composition

•  Interface generation procedure – Set Δ=Θ, compute Ω = (Π,Θ*,Θ*) – Set Θ=Θ*, compute Ω* = (Π,Θ*,Δ*)

6/2/09 S5 33

Page 34: A Compositional Analysis Framework for Hierarchical and

Applying to ARINC 653 •  2-level hierarchical scheduler

–  Partitions scheduled among themselves at higher level –  Processes within each partition scheduled at lower level

•  Uniqueness of ARINC 653 –  Harmonic partition periods –  Preemption and blocking overheads –  Communication dependencies across partitions

•  Process workload (dbf) depends on parameters which in turn are determined by these dependencies

•  Appling to real ARINC workloads obtained from Honeywell –  Preliminary results showed an improvement of up to 300% in

bandwidth, depending on period of interfaces for 5-6 partitions, with 1-5 tasks each

•  Tool (called CARTS) development underway to handle more extensive workloads

6/2/09 S5 34

Page 35: A Compositional Analysis Framework for Hierarchical and

Example: ARINC workload •  Process parameters: (O,J,T,C,D)

– O = Offset, J = Jitter, T = Period, C = Worst-case execution time, D = Deadline

– T,C,D from workload, O added speculatively

•  Example 1 Partition 1: {(2,0,25,1.4,25), (3,0,50,3.9,50)} Partition 2: {(0,0,50,2.8,50)} Partition 3: {(0,0,50,1.4,50)} Partition 4: {(3,0,25,1.1,25), (5,0,50,1.8,50), (11,0,100,2,100),

(13,0,200,5.3,200)} Partition 5: {(2,0,50,1.3,50), (14,0,200,1.5,200)}

6/2/09 S5 35

Page 36: A Compositional Analysis Framework for Hierarchical and

6/2/09 S5 36

Resource Supply Models

Tree schedule

Periodic model

EDP model

Recurring branching resource supply model

ACSR+

Bounded-delay Resource model

Cyclic Executive

Page 37: A Compositional Analysis Framework for Hierarchical and

37

Incremental Analysis

C3 DM R3

τ1

C1 EDF R1

τ2

C2 EDF R2

Incremental analysis R3’ should be same

irrespective of order in which τ2’ and τ4 are added

τ4

C4 EDF R4

τ2’

C2 EDF R2’

C3 DM R3’

Associative composition guarantees incremental

analysis

6/2/09 37 S5

Page 38: A Compositional Analysis Framework for Hierarchical and

July 23, 2008 AFOSR PI Meeting 38

Multicore Processor Virtualization

Scheduler

CPU

1.  Compositional analysis of hierarchical multiprocessor real-time systems, through component interfaces

2.  Using virtualization to develop new component interface for multiprocessor platforms

Task Task

S

interface

Task Task

S

interface

Task Task

S

interface

CPU CPU Virtual CPU

6/2/09 S5 38

Page 39: A Compositional Analysis Framework for Hierarchical and

39

Partitioned Scheduling

1

τx1

2 m . . . Physical processors

τx2 τxm . . . Task clusters

τx1 ∪ τx2

… ∪

τxm

= τ

τxi ∩ τxj

= φ for all i and j

6/2/09 S5 39

Page 40: A Compositional Analysis Framework for Hierarchical and

40

Global Scheduling

1

τ

2 m . . . Physical processors

Single task cluster

6/2/09 S5 40

Page 41: A Compositional Analysis Framework for Hierarchical and

41

Multiprocessor Scheduling •  Goal: Optimal scheduling algorithms and their

analysis techniques

•  Partitioned vs. Global Scheduling –  Shown using simulations[Baker05] that partitioned performs

better –  Exists task sets schedulable by global but not by any

partitioned algorithm –  EDF load bounds: 1/2(m - (m-1)δmax)[partitioned] vs. (m -

(m-1)δmax)(1-δmax)[global]

•  Our Approach: Framework for development of scheduling algorithms that support general task-processor mappings through virtualization

6/2/09 S5 41

Page 42: A Compositional Analysis Framework for Hierarchical and

42

Virtual Clustering Interface

1

τx1

2 m . . . Physical processors

τx2 τxk . . . Task clusters

τx1 ∪ τx2

… ∪

τxk

= τ

τxi ∩ τxj

= φ for all i and j

Virtual processors Γ1 Γ2 Γk . . .

6/2/09 S5 42

Page 43: A Compositional Analysis Framework for Hierarchical and

43

Virtual Clustering Interface

For each Γi, mi (<= m) is maximum number of physical processors that can be assigned to Γi at any instant

Γ1(m1) Γ2(m2) Γk(mk) . . .

1

τx1

2 m . . . Physical processors

τx2 τxk . . . Task clusters

Virtual processors

6/2/09 S5 43

Page 44: A Compositional Analysis Framework for Hierarchical and

Virtual Clustering •  Task set and number of processors ‒  τ1=τ2=τ3=τ4=(3,2,3), τ5=(6,4,6), and τ6=(6,3,6), m=4

•  Schedule under clustered scheduling ‒  τ1, τ2, τ3 scheduled on processors 1 and 2 ‒  τ4, τ5, τ6 scheduled on processors 3 and 4

6/2/09 S5

0 1 2 3 4 5 6

Processor 1

Processor 2

Processor 3

Processor 4

τ1 τ1

τ5 τ5

τ2

τ2

τ3 τ3

τ4 τ4

τ1 τ1

τ2

τ2

τ3 τ3

τ4 τ4

τ5 τ5

τ6

τ6 τ6

44

Page 45: A Compositional Analysis Framework for Hierarchical and

Virtual Clusters •  Use platform virtualization to provide a trade-off

between resource utilization and scheduling complexity

– Cluster interface: (Γ,m) •  Γ is the resource model, m is the maximum number

of physical processors available –  Inter-cluster scheduling is optimal

partitioned scheduling:

low utilization, easy to compute

global scheduling:

high utilization, hard to compute

cluster-based scheduling:

small clusters => partitioned, large clusters => global

6/2/09 S5 45

Page 46: A Compositional Analysis Framework for Hierarchical and

46

Virtual Clustering •  Two-level hierarchical scheduler

–  Intra-cluster schedulers for tasks within clusters –  Inter-cluster schedulers for clusters on the platform

(clusters can share some physical processors)

•  Concurrency bound for each cluster –  Abstract concurrency constraints of tasks within cluster –  Minimizes overhead of schedulability analysis (e.g., Global

EDF) –  Helps regulate resource access (e.g., Caches?)

•  Have virtual clusters been used before? –  Supertasks[MoRa99], Megatasks[ACD06] –  Results restricted to Pfair schedulers (not generalizable)

6/2/09 S5 46

Page 47: A Compositional Analysis Framework for Hierarchical and

47

Need for Multiprocessor Periodic Resource (MPR) model

C1 C2 Ck

Multiprocessor Platform-S

S1 S2 Sk

τx1 τx2 τxk

Γ1(Π1,Θ1) Γ2(Π2,Θ2) Γk(Πk,Θk)

. . .

6/2/09 S5 47

Page 48: A Compositional Analysis Framework for Hierarchical and

Multiprocessor Periodic Resource (MPR) model •  Γ = (Π, Θ,,m’)

–  Θ units of resource supply guaranteed in every Π time units, with concurrency at most m’ in any time instant

•  Consider Γ = (5, 12, 3)

•  Why MPR model? –  Periodicity enables transformation of MPR model to periodic tasks

which can be scheduled using standard algorithms

0 1 2 3 4 5 6 7 8 9 10

Processor 2

Processor 3

Processor 4

Γ Γ  Γ  Γ  Γ  Γ  Γ  Γ  Γ  Γ 

Γ  Γ  Γ  Γ 

Γ 

Γ  Γ 

Γ 

Γ  Γ 

Γ Γ Γ Γ 

6/2/09 S5 48

Page 49: A Compositional Analysis Framework for Hierarchical and

Virtual Cluster-based Scheduling 1.  Split task set τ into clusters τx1

, …, τxk

2.  Abstract τxi into MPR interface Γi (for cluster VCi)

3.  Transform each Γi into periodic tasks •  Enables inter-cluster scheduler to schedule Γi

6/2/09 S5 49

Page 50: A Compositional Analysis Framework for Hierarchical and

Summary on Virtual Clustering

•  Virtual cluster-based multiprocessor scheduling

–  Transforms tasks from constrained to implicit deadline •  Optimal inter-cluster scheduling techniques can be employed

–  Allows processor slack from one cluster to be used by another –  Shows promise w.r.t. success of simple clustering techniques

•  Open issues –  Efficient clustering techniques for constrained and arbitrary

deadline task systems •  With an aim to solve the important open problem of optimal

scheduling of arbitrary deadline periodic task systems

–  Including other resources such as caches

6/2/09 S5 50

Page 51: A Compositional Analysis Framework for Hierarchical and

CARTS: Compositional Analysis of Real-Time Systems

6/2/09 S5 51

Page 52: A Compositional Analysis Framework for Hierarchical and

Execution Demands for VM and OS Schedulers

OS Scheduler(EDF) (5,4.38)

VM Scheduler (RM) (5,1.86)

Digital Controller

(25,5)

Task 1 (25,4)

Task 2 (40,5)

Multimedia (33,10)

6/2/09 S5 52

Page 53: A Compositional Analysis Framework for Hierarchical and

System Modeling in CARTS

•  Tree representation 6/2/09 S5 53

Page 54: A Compositional Analysis Framework for Hierarchical and

System Modeling in CARTS

•  XML representation 6/2/09 S5 54

Page 55: A Compositional Analysis Framework for Hierarchical and

Analysis in CART

6/2/09 S5 55

Page 56: A Compositional Analysis Framework for Hierarchical and

CARTS

Supports •  Task & Resource Models

–  Periodic –  Explicit Deadline Periodic

(EDP)

•  Scheduling Policies –  Rate monotonic –  Earlies Deadline First

(EDF) –  Others planned

•  Open architecture

Features •  Editor for demand-supply

XML files •  Tree representation of

components and tasks •  Editing components/tasks

in the tree •  Conversion from XML to

tree representation and vice versa

•  AADL output planned 6/2/09 S5 56

Page 57: A Compositional Analysis Framework for Hierarchical and

Summary •  Periodic Resource Model •  Explicit Deadline Resource (EDP) Model •  Incremental Analysis •  Resource Optimality •  Virtual Clustering for Mutlicore Processors •  Toolset: CARTS •  Compositionality in Multimode Real-Time Systems •  Looking for Case Studies

6/2/09 S5 57

Page 58: A Compositional Analysis Framework for Hierarchical and

References •  A Compositional Scheduling Framework for Digital Avionics Systems, Arvind Easwaran, Insup Lee, Oleg Sokolsky,

Steve Vestal, to appear in RTCSA 2009. •  Optimal Virtual Cluster-based Multiprocessor Scheduling, Arvind Easwaran, Insik Shin, and Insup Lee, to be

published in Real-Time Systems Journal (RTSJ). •  On the complexity of generating optimal interfaces for hierarchical systems, Arvind Easwaran, Madhukar Anand,

Insup Lee, Oleg Sokolsky, Workshop on Compositional Theory and Technology for Real-Time Embedded Systems (CRTS 2008).

•  Hierarchical Scheduling Framework for Virtual Clustering of Multiprocessors, Insik Shin, Arvind Easwaran, Insup Lee, ECRTS, Prague, Czech Republic, July 2-4, 2008 (Runner-up in the best paper award)

•  Robust and Sustainable Schedulability Analysis of Embedded Software, Madhukar Anand and Insup Lee, LCTES, Tucson, AZ, Jun 12-13, 2008

•  Compositional Feasibility Analysis for Conditional Task Models, Madhukar Anand, Arvind Easwaran, Sebastian Fischmeister, and Insup Lee, ISORC, Orlando, Florida, May 5-7, 2008

•  Compositional Real-Time Scheduling Framework with Periodic Model, Insik Shin and Insup Lee, ACM Transactions on Embedded Computing Systems (TECS), vol 7, no 3, April 2008

•  Interface Algebra for Analysis of Hierarchical Real-Time Systems, Arvind Easwaran, Insup Lee, Oleg Sokolsky, Foundations of Interface Technologies (FIT) workshop, Budapest, Hungary, April 5, 2008

•  Compositional Analysis Framework using EDP Resource Models, Arvind Easwaran, Madhukar Anand, and Insup Lee, Tucson, Arizona, Dec 3-6, 2007

•  Resources in process algebra, Insup Lee, Anna Philippou, Oleg Sokolsky, Journal of Logic and Algebraic Programming, Vol. 72, pp. 98-122,2007

6/2/09 S5 58

This work was supported in part by AFOSR, NSF and ONR.

Page 59: A Compositional Analysis Framework for Hierarchical and

Thank You!

Questions?