• Non ci sono risultati.

Schedulability analysis of distributed real-time systems

N/A
N/A
Protected

Academic year: 2022

Condividi "Schedulability analysis of distributed real-time systems"

Copied!
24
0
0

Testo completo

(1)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 1

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Schedulability analysis of distributed real-time systems

By: Michael González Harbour [email protected]

http://www.ctr.unican.es Grupo de Computadores y tiempo real, Universidad de Cantabria

Santander, February 2009

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 2

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Schedulability analysis of real-time distributed systems

1. Introduction

2. Single processor systems 3. Distributed systems

4. Schedulability analysis: holistic approach

5. Schedulability analysis: offset-based approaches 6. Schedulability analysis: EDF

7. Modelling techniques: MAST 8. Conclusion and future work

UNIVERSIDAD DE CANTABRIA

Elements of a real-time system

External Environment

Computer

Real-Time Software TaskTask

TaskTask OS Digital

I/O

Analog I/O

Communi-

cations Other

Computers

Clock

Other I/O

UNIVERSIDAD DE CANTABRIA

Real-time systems

A Real-time system is a combination of a computer, hardware I/O devices, and special-purpose software, in which:

there is a strong interaction with the environment

the environment changes with time

the system simultaneously controls and/or reacts to different aspects of the environment

As a result:

timing requirements are imposed on software

software is naturally concurrent

To ensure that timing requirements are met, the system timing

behavior must be predictable

(2)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 5

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Real-time system model

The real-time system model contains five independent parts:

platform and schedulable entities - processing resources and schedulers

- threads and message streams (scheduling servers)

Software modules

- operations and messages - shared resources

Real-time situation

- representing a particular mode of operation of the system, composed of a set of transactions

A transaction contains a set of activities that will be executed by the system in response to events

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 6

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Real-time system model

Real-time situation

Platform &

Event Handler Activity

Timing Requirement Operation

Shared Resources

Scheduling Server

Scheduler

Scheduling Parameters

Event Event

Event Reference Processing

Resource

Software Modules

schedulable entities

UNIVERSIDAD DE CANTABRIA

Real-time situation

External Event

Event Handler

Event Handler

Event Handler

Event Handlers

Activity Activity Multicast

...

Timing Requirement Transaction

Transaction

Internal Event

UNIVERSIDAD DE CANTABRIA

A single-processor example

Periodic Tasks Aperiodic Task

C=20 ms

C=40 ms

C=100 ms

Shared

T = 100 ms

T = 150 ms

T = 350 ms

20 ms

Data Server

2 ms

10 ms

Comm Server

10 ms

C=5 ms

Emergency

Minimum Interarrival

Deadline = 6 msec after arrival Deadline 100 ms

Deadline 150 ms

Deadline 350 ms

Time = 50 msec

Resources Control

Task

Planning Task

Status Task

Read

Send

Receive Write

(3)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 9

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Transactions in this example

Control Task

E1 O1

Periodic T=100 ms

Hard Deadline D=100 ms

Planning Task

E2 O2

Periodic T=150 ms

Hard Deadline D=150 ms

Status Task

E3 O3

Periodic T=350 ms

Hard Deadline D=350 ms

Emergency Task

E4 O4

Sporadic MinInt=50 ms

Hard Deadline D=6 ms

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 10

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Schedulability analysis of real-time distributed systems

1. Introduction

2. Single processor systems 3. Distributed systems

4. Schedulability analysis: holistic approach

5. Schedulability analysis: offset-based approaches 6. Schedulability analysis: EDF

7. Advanced modelling techniques: MAST 8. Conclusion and future work

UNIVERSIDAD DE CANTABRIA

Definitions

Task parameters

- C

i

= compute time (execution time) for task τ

i

- T

i

= period (or minimum interarrival time) of task τ

i

- P

i

= priority of task τ

i

- D

i

= deadline of task τ

i

- R

i

= worst-case response time of task τ

i

- φ

i

= phase of task τ

i,

(usually unknown)

Task utilization:

CPU utilization for a set of tasks:

U

i

= C

i

T

i

U = U

1

+ U

2

+ … U +

n

UNIVERSIDAD DE CANTABRIA

Basic principles of real-time analysis

Two concepts help build the worst-case condition under fixed priorities with :

Critical instant. The worst-case response time for all tasks in the task set is obtained when all tasks are activated at the same time

Busy period for task τ

i

. The interval during which the processor is busy executing τ

i

or higher priority tasks

- we only need to check the deadlines in the worst-case busy period - worst case busy period is initiated at a critical instant

Based on these concepts, several results arise:

Optimality of deadline monotonic priorities when

Utilization bound tests

Response time analysis (exact test) D

i

T

i

D

i

T

i

(4)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 13

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Example of a critical instant

τ3

0 20 100 120 200 220 300 320

150 190 300

100 120 190 200 220 240 350 time

20 60

60 0

0 150

τ2 τ1

τ3 busy period

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 14

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Priority assignment

If , deadline monotonic assignment

For a set of periodic independent tasks, with deadlines within the period, the optimum priority assignment is the deadline monotonic assignment

- Priorities are assigned according to task deadlines

- A task with a shorter deadline is assigned a higher priority If for one or more tasks, Audsley’s algorithm

iteratively apply analysis, successively ordering tasks by priority (simulated annealing)

- O(n

2

) times the analysis

D

i

T

i

D

i

> T

i

UNIVERSIDAD DE CANTABRIA

Response time analysis (Harter, 1984;

Joseph and Pandya, 1986)

Iterative test (pseudopolynomial time):

Start with any initial value < final value, for example

Finish when two consecutive results are the same a

k+1

W

i

( ) a

k

a

k

T

1

--- C

1

a

k

T

i1

--- C

i1

C

i

B

i

+ + + +

= =

preemption execution

blocking

a

0

= C

1

+ C

2

+ … C +

i

UNIVERSIDAD DE CANTABRIA

Elements that influence the response time

τ3

time

τ2 τ1

Preemption Execution

Blocking

(5)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 17

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Analysis with arbitrary deadlines (Lehoczky, 1990)

Iterative equation used for analysis of task-i in one resource:

This is carried out for p=1,2,3,..., until

Then, the global worst-case response time is w

in+1

( ) p pC

i

B

i

w

in

( ) p

T

j

--- C

j jhp i( )

¦

+ +

=

w

i

( ) pT p

i

R

i

= max R (

i

( ) p ) R

i

( ) p = w

i

( ) p – ( p1 )T

i

+ J

i

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 18

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Effects of release jitter

Periodic events with jitter have an arrival time which may be early or late, within a bounded interval:

- events arrive at

Jitter may have a delay effect on lower priority tasks:

t

0

+ nT

i

+ j , j ∈ [ 0 J ,

i

]

Execution sequence for two periodic tasks.

Execution sequence with jitter.

Worst case is one preemption Worst case is two preemptions t

High pri.

Low pri.

t

UNIVERSIDAD DE CANTABRIA

Analysis with arbitrary deadlines and jitter (Tindell, 1992):

Iterative equation used for analysis of task-i in one resource:

This is carried out for p=1,2,3,..., until

Then, the global worst-case response time is

w

in+1

( ) p pC

i

B

i

J

j

+ w

in

( ) p T

j

--- C

j jhp i( )

¦

+ +

=

w

i

( ) pT p

i

R

i

= max R (

i

( ) p ) R

i

( ) p = w

i

( ) p – ( p1 )T

i

+ J

i

UNIVERSIDAD DE CANTABRIA

Schedulability analysis analysis of real-time distributed systems

1. Introduction

2. Single processor systems 3. Distributed systems

4. Schedulability analysis: holistic approach

5. Schedulability analysis: offset-based approaches 6. Schedulability analysis: EDF

7. Modelling techniques: MAST

8. Conclusion and future work

(6)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 21

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Real-time networks

Very few networks guarantee real-time response

many protocols are based on collisions

no priorities or deadlines in most protocols - Wireless: IEEE 802.11e, Sensor networks,...

- IEEE 802.1p, with 8 priority levels Some solutions

- CAN bus

- Priority-based token passing (e.g., RT-EP) - Time-division multiplexed access

- Point to point networks

No commercial or standard EDF networks yet

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 22

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Distributed system model

Network CPU-2 CPU-1

Linear Action:

Linear Response to an Event:

a

j

e

j-1,j

e

j,j+1

T

j-1,j

= T

j

= T

j,j+1

a

1

e

1

a

2

e

1,2

a

3

e

2,3

d

2

D

2

ED

3 Action

e

1 External event

e

1 Internal

event

UNIVERSIDAD DE CANTABRIA

Jitter in distributed systems

In the example below, actions a

2

,a

3

and a

5

,a

6

,a

7

,a

8

have jitter, even if a

1

and a

4

are purely periodic:

CPU-1

Network

CPU-2 a1

a5

a3 a8

a4 a7

a6 a2

a1

a5

a3 a8

a4 a7

a6 a2

UNIVERSIDAD DE CANTABRIA

The problem

Mutual dependencies

Jitter in one resource depends on the response times in other resources

Response times depend on jitters Solutions

algorithms that can calculate jitter and response times

change the scheduler

- avoid jitter: phase control (requires global clocks)

- eliminate the effects of jitter, with sporadic server scheduling

(7)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 25

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Avoiding jitter

Release each task (or message) at specific times in the schedule

wait until the worst-case response time before releasing the next task or message

requires global clocks, and OS and network driver cooperation Network CPU-2

CPU-1 a

1

e

1

a

2

e

1,2

a

3

e

2,3

R

1

R

2

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 26

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Eliminate the effects of jitter

Sporadic server scheduling

guarantees an execution capacity (C

R

)

every replenishment period (T

R

) Features

a minimum bandwidth for aperiodic events

bounded preemption on lower priority tasks - effects like those of a periodic task

- eliminates the effects of jitter

Not usually available in network schedulers

POSIX specifies sporadic server scheduling, but has a flaw

UNIVERSIDAD DE CANTABRIA

Schedulability analysis of real-time distributed systems

1. Introduction

2. Single processor systems 3. Distributed systems

4. Schedulability analysis: holistic approach

5. Schedulability analysis: offset-based approaches 6. Schedulability analysis: EDF

7. Advanced modelling techniques: MAST 8. Conclusion and future work

UNIVERSIDAD DE CANTABRIA

Holistic analysis technique

Mainly developed at the University of York

Each resource is analyzed separately (CPU’s and communication networks):

• all activations after the first have “jitter”

jitter in one action is considered equal to the worst-case response time of the previous actions

• analysis in one resource affects response times in other resources

• the analysis is repeated iteratively, until a stable solution is achieved

• the method converges because of the monotonic relation

between jitters and response times

(8)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 29

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Analysis in the distributed system

Assumption: J

i

= R

i

-R

bi

, R

bi

= best-case response time=0 algorithm WCRT is

begin

initialize jitter terms to zero loop

calculate worst-case response times;

calculate new jitters, equal to response times of preceding actions

exit when not schedulable or no variation since last iteration;

end loop;

end WCRT

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 30

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Example

GUI

Trajectory Planner

Reporter

Command Manager

Servo Control

Data Sender Command

Message

Status Message

Teleoperation Station

Ethernet

Local Controller

1sec

50ms

5ms Network

RMT:

Teleoperated Robot

UNIVERSIDAD DE CANTABRIA

Schedulability analysis of real-time distributed systems

1. Introduction

2. Single processor systems 3. Distributed systems

4. Schedulability analysis: holistic approach

5. Schedulability analysis: offset-based approaches 6. Schedulability analysis: EDF

7. Advanced modelling techniques: MAST 8. Conclusion and future work

UNIVERSIDAD DE CANTABRIA

Pessimism in holistic analysis

Holistic analysis technique assumes independent task activations in each resource

Task-5 Task-1

task21

Task-4

Task-3

CPU-1 CPU-2

Serial Line m1

m2 task22

Task-2

(9)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 33

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Independent task analysis

Execution timeline for task

22

in previous example:

Response time for task-2:

includes times for task

21

, m

1

, task-4, m

2

and task

22

total is 270

task-1

task21

task22

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 34

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Using offsets to reduce pessimism

Execution timeline for analysis of task-2:

task-1 task-2

serial

task-3 task-4 line

t=145

UNIVERSIDAD DE CANTABRIA

Objectives of the offset-based techniques

To reduce the pessimism of the worst-case analysis in multiprocessor and distributed systems:

by considering offsets in the analysis

offsets can be larger than task periods - this is important if deadlines > task periods

offsets can be static or dynamic:

- offsets are dynamic in distributed systems - also in tasks that suspend themselves

This enhancement comes “for free” as there is no change to the application

although better results can be obtained if best-case execution times are measured

UNIVERSIDAD DE CANTABRIA

System model with offsets

Γ1

Γ2

Γn

T1 T1

τ21 τ22 R12 R11

Φ11 Φ12

T2

Φ21 Φ22

Tn Rn3

Rn1 Rn2

Φn1 Φn2 Φn3

In addition, each task may have jitter

(10)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 37

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Analysis with offsets

Developed by Tindell at the University of York:

The exact analysis is intractable

An upper-bound approximation provides good results (equal to exact analysis in 93% of tested cases)

Main limitations:

Offsets are static

- not applicable to general distributed transactions

Offsets are less than the task periods

- for distributed systems, deadlines would need to be smaller than or equal to the task periods

Extended in Cantabria to dynamic offsets and arbitrary deadlines

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 38

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Exact analysis with static offsets

Contribution of task τ

ij

to the response time of lower priority tasks:

Set 0: activations that occur before the critical instant and that cannot occur inside the busy period

Set 1: activations that occur before or at the critical instant, and that may occur inside the busy period

- Theorem 1: worst-case when they all occur at the critical instant - Theorem 2: worst-case when the first one experienced its

maximum jitter

Set 2: activations that occur after the critical instant - Theorem 1: worst-case when they have zero jitter

UNIVERSIDAD DE CANTABRIA

Scenario for calculating the worst- case contribution of τ ij

Ti tc

Φij Φij Φij Φij

Ji

Scenario 1

UNIVERSIDAD DE CANTABRIA

Upper bound approximation for worst- case analysis

Exact analysis is intractable:

The task that generates the worst-case contribution of a given transaction is unknown

The analysis has to check all possible combinations of tasks Tindell developed an upper bound approximation:

For each transaction we consider a function that is the maximum of all the worst-case contributions considering each of the tasks of the transaction to be initiating the critical instant

This technique is pessimistic, but pseudo-polynomial

In 93% of the tested cases, the response times were exact

(11)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 41

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Analysis with dynamic offsets

In many systems the offset may be dynamic:

Example: task with a suspending operation Φ

ij

∈ [ Φ

ij min,

, Φ

ij max,

]

task1

disk read

S ∈ [Smin,Smax] Φ12∈ [Rbi1+Smin, Ri1+Smax]

task11 task12

Ri1

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 42

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Analysis with dynamic offsets (cont’d)

Dynamic offsets can be modeled with static offsets and jitter:

Equivalent offset:

Equivalent jitter:

The problem is that now offsets depend on response times, and response times depend on offsets

The solution is to apply the analysis iteratively, starting with response times = zero, until a stable solution is achieved

We call this algorithm WCDO (Worst-Case Dynamic Offsets) Φ'

ij

= Φ

ij min,

J'

ij

= J

ij

+ ( Φ

ij max,

– Φ

ij min,

)

UNIVERSIDAD DE CANTABRIA

Analysis of multiprocessor and distributed systems

Dynamic offsets in distributed transactions can also be modeled with static offsets and jitter:

Equivalent offset:

Equivalent jitter:

τ

i1

τ

i2

τ

i3

τ

i4

τ

i5

Distributed transaction Γ

i

Φ'

ij

= Φ

ij min,

= R

ij 1b

J'

ij

= J

ij

+ ( Φ

ij max,

– Φ

ij min,

) = R

ij 1

R

ij 1b

UNIVERSIDAD DE CANTABRIA

Comparison with existing technique:

1 processor

Analysis for:

1 processor 10 transactions 10 tasks per transaction

1 1,5 2 2,5 3 3,5 4 4,5 5

0 10 20 30 40 50 60 70 80 90

% Utilization Rindep/RWCDO

Tmax/Tmin = 10 Tmax/Tmin = 100 Tmax/Tmin=1000

(12)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 45

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Comparison with four processors, and best-case=0

Analysis for:

4 processors 10 transactions 12 tasks per transaction best case = 0

1 1,05 1,1 1,15 1,2 1,25 1,3 1,35 1,4 1,45 1,5

0 10 20 30 40 50 60 70 80 90

% Utilization Rindep/RWCDO

Tmax/Tmin = 10 Tmax/Tmin = 100 Tmax/Tmin = 1000

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 46

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Comparison with four processors and best-case>0

Analysis for:

4 processors 10 transactions 12 tasks per transaction best case > 0

1 1,5 2 2,5 3 3,5 4 4,5 5

0 10 20 30 40 50 60 70 80 90

% Utilization Rindep/RWCDO

Tmax/Tmin = 10 Tmax/Tmin = 100 Tmax/Tmin = 1000

UNIVERSIDAD DE CANTABRIA

Maximum utilization with 20 tasks per transaction

Analysis for:

4 processors 5 transactions 20 tasks per transaction Tmax/Tmin=100

0 1 2 3 4 5 6 7 8 9 10

0 10 20 30 40 50 60 70 80 90

Maximum schedulable utilization

D/T

Independent tasks WCDO with best case=0 WCDO with best case > 0

UNIVERSIDAD DE CANTABRIA

Maximum utilization with 12 tasks per transaction

Analysis for:

4 processors 5 transactions 12 tasks per transaction Tmax/Tmin=100

0 1 2 3 4 5 6 7 8

0 10 20 30 40 50 60 70 80 90

Maximum schedulable utilization

D/T

Independent tasks WCDO with best case = 0 WCDO with best case > 0

(13)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 49

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Room for improvement in offset- based analysis

Offset-based analysis produces results that are much less pessimistic than other methods (i.e., holistic analysis) But offset-based analysis still has room for improvement

a high priority task that is preceded by a low priority task may not be able to execute before a medium priority task under analysis

Task-i2 Task-i3 Task-i4 Task-i5

Prio=High Prio=High Prio=Low Prio=High

Task-2 Task under analysis Prio=medium Task-i1

Prio=Low

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 50

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Objectives of optimized offset-based analysis

To enhance the offset-based schedulability analysis by:

Eliminating from the analysis the effects of higher priority tasks that cannot execute due to precedence constraints

Eliminating the effects of the tasks that are preceded by the task under analysis

These enhancements reduce much of the pessimism in the analysis of distributed systems

UNIVERSIDAD DE CANTABRIA

Simulation results:

response times

Analysis for:

1 processor 10 transactions 10 tasks per transaction Best case = 0

1 2 3 4 5 6 7 8 9 10

0 5 10 15 20 25 30 35 40 45 50

% Utilization Rindep/R

WCDOPS , K = 10 WCDOPS , K = 100 WCDOPS , K = 1000 WCDO , K = 10 WCDO , K = 100 WCDO , K = 1000

UNIVERSIDAD DE CANTABRIA

Simulation results:

response times

Analysis for:

4 processors 10 transactions 12 tasks per transaction Best case > 0

1 1,5 2 2,5 3 3,5

0 5 10 15 20 25 30 35 40 45 50

% Utilization Rindep/R

WCDOPS , K= 10 WCDOPS , K= 100 WCDOPS , K= 1000 WCDO , K= 10 WCDO , K= 100 WCDO , K= 1000

(14)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 53

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Simulation results:

utilization

Analysis for:

4 processors 5 transactions 20 tasks per transaction Tmax/Tmin = 100

0 10 20 30 40

0 1 2 3 4 5 6 7 8 9 10

Relation D/T

Maximum utilization

Independent tasks WCDO with best case = 0 WCDOPS with best case = 0 WCDOPS with best case > 0

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 54

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Simulation results:

utilization

Analysis for:

4 processors 5 transactions 12 tasks per transaction Tmax/Tmin = 100

0 10 20 30 40 50

0 2 4 6 8 10

Relation D/T

Maximum utilization

Independent tasks WCDO with best case = 0 WCDOPS with best case = 0 WCDOPS with best case > 0

UNIVERSIDAD DE CANTABRIA

Priority assignment techniques

No known optimum priority assignment Simulated Annealing:

Standard optimization technique

Finds solutions by successively exchanging the priorities of a pair of tasks, and reapplying the analysis to determine if results are worse or better

The probability of the change surviving is a function of the results

Does not guarantee finding the solution

UNIVERSIDAD DE CANTABRIA

Priority assignment techniques (cont’d)

HOPA (Heuristic Optimized Priority Assignment)

Heuristic algorithm based on successively applying the analysis

Much faster than simulated annealing

Usually finds better solutions

Does not guarantee finding the solution

(15)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 57

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Schedulability analysis of real-time distributed systems

1. Introduction

2. Single processor systems 3. Distributed systems

4. Schedulability analysis: holistic approach

5. Schedulability analysis: offset-based approaches 6. Schedulability analysis: EDF

7. Modelling techniques: MAST 8. Conclusion and future work

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 58

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

7.2 EDF Scheduling Policy

Each task i has a relative period, T

i

, and a relative deadline assigned: D

i

Each task-i job j has an absolute activation time, a

i,j

, and an absolute deadline, d

i,j

, used as the inverse of the job priority

T1

T2 a1,2

a1,1 a1,3 a1,4

a2,1 a2,2 a2,3

D1 D1 D1

D2

d1,1 d1,2 d1,3

d2,1 d2,2

task1

task2 D2

D1

UNIVERSIDAD DE CANTABRIA

Response time analysis in a single resource

Busy period: interval during which processor is not idle

Worst case response time of a task: found in a busy period in which all other tasks:

are released at the beginning of the busy period

and have experienced their maximum jitter Differences with fixed priorities:

The task under analysis does not necessarily start with the busy period

The busy period is longer

UNIVERSIDAD DE CANTABRIA

Response time analysis in a single resource (cont’d)

Worst contribution of task τ

i

to the busy period at time t, when the deadline of the analyzed task, τ

a

, is D:

Worst completion time of activation p, if first activation at A:

Worst response time if first activation is A:

W

i

( t D , ) min t + J

i

T

i

--- J

i

+ D d

i

T

i

--- + 1

© , ¹

§ ·

0

C

i

=

w

aA

( ) p pC

a

W

i

( w

aA

( ) D p ,

A

( ) p )

i a

¦

+

=

R

A

( ) p = w

aA

( ) A p – + J

a

– ( p 1)T

a

(16)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 61

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Response time analysis in a single resource (cont’d)

Set of potential critical instants; L is the longest busy period:

Values of A to check:

Worst-case response time

Ψ = ∪ { ( p 1)T

i

J

i

+ d

i

} p 1 … L J T

a

a

---

= , ∀ ia

Ψ∗ = { Ψ

x

∈ Ψ ( p 1)T

a

J

a

+ d

a

≤ Ψ

x

< pT

a

J

a

+ d

a

} A = Ψ

x

– [ ( p 1)T

a

J

a

+ d

a

]

R

a

= max R [

A

( ) p ] ∀ p 1 … L J

a

T

a

---

= , ∀ A ∈ Ψ∗

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 62

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

EDF in distributed systems

Two scheduling schemes can be used in distributed systems

Global deadlines

- relative to the external event arrival, require global clock synchronization

Local deadlines

- relative to the internal event arrival, no global clocks needed

Network CPU-2

CPU-1 a1 e1

a2 e1,2

a3 e2,3

d2

D2

ED3

UNIVERSIDAD DE CANTABRIA

Holistic analysis for EDF systems

Developed by Spuri for global deadlines

similar to the holistic analysis developed for fixed priorities at the University of York

Each resource is analyzed separately (CPU’s and networks):

all activations after the first present “jitter”

the analysis is repeated, until a stable solution is achieved

the solution is pessimistic

Extended to local deadlines by Palencia (2009, submitted)

UNIVERSIDAD DE CANTABRIA

Offset-based analysis for EDF with global deadlines (Palencia, 2003)

Dynamic offsets in distributed transactions can also be modeled with static offsets and jitter:

Equivalent offset:

Equivalent jitter:

τ

i1

τ

i2

τ

i3

τ

i4

τ

i5

Distributed transaction Γ

i

Φ'

ij

= Φ

ij min,

= R

ij 1b

J'

ij

= J

ij

+ ( Φ

ij max,

– Φ

ij min,

) = R

ij 1

R

ij 1b

(17)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 65

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Comparison with holistic analysis:

1 processor

Analysis for:

1 processor 10 transactions 5 tasks per transaction

1 1,5 2 2,5 3 3,5 4 4,5 5

0 10 20 30 40 50 60 70 80 90

% Utilization Rindep/ROffsets

Tmax/Tmin = 10 Tmax/Tmin = 100 Tmax/Tmin=1000

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 66

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Comparison with four processors, and best-case=0

Analysis for:

4 processor 10 transactions 12 tasks per transaction best case = 0

1 2 3 4

0 10 20 30 40 50 60

% Utilization Rindep/ROffsets

Tmax/Tmin = 10 Tmax/Tmin = 100 Tmax/Tmin = 1000

UNIVERSIDAD DE CANTABRIA

Comparison with four processors and best-case>0

Analysis for:

4 processor 10 transactions 12 tasks per transaction best case > 0

1 2 3 4 5

0 10 20 30 40 50 60

% Utilization Rindep/ROffsets

Tmax/Tmin = 10 Tmax/Tmin = 100 Tmax/Tmin = 1000

UNIVERSIDAD DE CANTABRIA

Maximum utilization with 20 tasks per transaction

Analysis for:

4 processors 5 transactions

20 tasks per transaction Tmax/Tmin=10

0 1 2 3 4 5 6 7 8 9 10

0 10 20 30 40 50 60 70

Maximum schedulable utilization

D/T

Independent tasks Offsets with best case=0 Offsets with best case > 0

(18)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 69

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Maximum utilization with 12 tasks per transaction

Analysis for:

4 processors 5 transactions

12 tasks per transaction Tmax/Tmin=100

0 1 2 3 4 5 6 7 8 9 10

0 10 20 30 40 50 60 70 80 90

Maximum schedulable utilization

D/T

Independent tasks Offsets with best case=0 Offsets with best case >

0

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 70

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Schedulability analysis of real-time distributed systems

1. Introduction

2. Single processor systems 3. Distributed systems

4. Schedulability analysis: holistic approach

5. Schedulability analysis: offset-based approaches 6. Schedulability analysis: EDF

7. Modelling techniques: MAST 8. Conclusion and future work

UNIVERSIDAD DE CANTABRIA

MAST Environment

Model Building Tools

RT Model Data

Tools

Data handling Tools

Component Profile Ada Profile

UML Profile

Results viewer

Model description

Results description

Trace log

Tool launcher

Simulator Sensitivity Prio. assignment

Schedulability analysis

Graphical editor XML converter

UNIVERSIDAD DE CANTABRIA

Real-time analysis:

integration into the design process

Party

Analysis Design

Translation Testing

Requirements Analysis

System Engineering Object analysis

Architectural Design Mechanism

Design Detailed

Design Coding

Unit

Testing Integration and Test Validation

Concurrency patterns

Synchronization patterns Mapping real-time properties to subsystems

High-level real-time analysis Architectural

real-time models Scheduling policies

Identification of real- time situations:

- Transactions - Timing requirements - Work loads WCET evaluation

Schedulability analysis Priority Assignment Sensitivity analysis Generation of detailed real-

time models

(19)

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 73

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

Fixed Priority Response-Time Analysis

Technique

ProcessorSingle- ProcessorMulti- Transact.Simple Transact.Linear Multiple Event T.

Classic Rate Mono- tonic

; ;

Varying Priorities ; ; ;

Holistic ; ; ; ;

Offset Based Unopti- mized

; ; ; ;

Offset Based ; ; ; ;

Multiple Event ; ; ; ; ;

GRUPO DE COMPUTADORES Y TIEMPO REAL © Michael González Harbour 74

FACULTAD DE CIENCIAS 25/Feb/09

UNIVERSIDAD DE CANTABRIA

EDF Response Time Analysis Tools

An unsolved problem remains for distributed systems with SRP (Stack-based Resource assignment Protocol)

Technique

ProcessorSingle- ProcessorMulti- Transact.Simple Transact.Linear Multiple Event T.

Single Processor ; ;

EDF_Within_Priorities ; ;

Holistic - local ; ; ; ;

Offset Based - local

Holistic - global ; ; ; ;

Offset Based - global ; ; ; ;

UNIVERSIDAD DE CANTABRIA

Priority assignment techniques

Technique

Single- Processor

FP

Multi- Processor

FP

Single- Processor

EDF

Multi- Processor

EDF

Monoprocessor

; ;

HOPA / HOSDA

; ; ; ;

Simulated Annealing

; ;

UNIVERSIDAD DE CANTABRIA

8. Conclusion

A solid analysis body exists for analyzing fixed priority distributed systems

response time analysis

offset-based techniques better than holistic analysis - but still pessimistic

Theoretical developments still needed for EDF distributed systems

integration of SRP and response time analysis

offset-based techniques for local deadlines

precedence constraints in offset-based techniques Technical developments still needed in

real-time networks and distribution middleware

Riferimenti

Documenti correlati

For the Profile model (Fig. 5f ), differently from the previous case, in the x-axis we put the γ parameter. In this case with each value of γ and with p = 0 the percentage of

Il mare come elemento dislocatore per eccel- lenza, che fa sorgere continuamente nuove avventure nella prima parte del poema, sembra governato da una “legge” compositiva

image showing resolution of the left lentiform nucleus lesion and reduction of the posterior limb involvement in the internal capsule.. FIGURe 2 | Case 2: (a) axial T1 image and

The proposed analysis is capable of tracing information flow caused by exceptions by identifying instruction handler protected instructions as virtual control instructions.. A

Keywords: Arterial stiffness Pulse wave velocity Carotid thickness Arterial aging Masked hypertension White coat hypertension 24 hour blood pressure

The vibration tests, according to the impact technique, were carried out on the manufactured sample in order to estimate the modal parameters, and in particular

 sharing stack space means that two task instances can use the same stack memory area in different time instants.  in normal preemptive fixed priority schedulers, tasks cannot

In order to validate the proposed software architecture, in terms of both performance and services provided by the middleware, we have undertaken the porting to the new middleware