Alina Weffers-Albu, m.a.albu@tue.nl - PowerPoint PPT Presentation

1 / 30
About This Presentation
Title:

Alina Weffers-Albu, m.a.albu@tue.nl

Description:

Title: PowerPoint Presentation Author: album Last modified by: Weffers-Albu Created Date: 12/11/2003 10:14:32 AM Document presentation format: On-screen Show – PowerPoint PPT presentation

Number of Views:20
Avg rating:3.0/5.0
Slides: 31
Provided by: albu4
Category:

less

Transcript and Presenter's Notes

Title: Alina Weffers-Albu, m.a.albu@tue.nl


1
On a Theory of Media Processing Systems
Behaviour, with Applications
  • M.A. Weffers-Albu, J.J. Lukkien, E.F.M. Steffens,
    P.D.V. v.d. Stok

2
Contents
  • Domain introduction
  • Relevant issues
  • Related work
  • Approach
  • Model
  • Conclusions

3
Domain introduction
  • Media Processing Applications systems with
    real-time requirements
  • Execute on physical platform (CPU, memory, bus)

4

Domain introductionMedia Processing Applications
5

Domain introductionMedia Processing Applications

Physical Platform
6

Domain introductionMedia Processing Applications

Physical Platform
7

Domain introductionMedia Processing Applications
8
Relevant Issues
  • When constructing / modifying an application
  • How much resources does the application need?
  • Will the application meet its timing
    requirements?
  • What is the minimum of the resources needed such
    that timing requirements are met?
  • What can one do to reduce the resource needs of
    the application?
  • What can be done to improve the measure in which
    the application meets timing requirements?
  • Need to predict, control the overall behavior of
    the application

9
Relevant Issues
  • Calculate / Optimize
  • response time of tasks, chain,
  • necessary and sufficient buffer capacities
  • number of context switches (cost associated)
  • Need model for dynamic behavior of system.

10
Related work
  • Classical RT theory does not help directly
  • Mainly periodic independent tasks
  • Tasks with precedence constraints
  • Previous work in domain
  • Estimations for some parameters (Lowet)
  • Reduce the problem to an equivalent one where
    tasks could be treated as independent periodic
    (Goddard, Groba).
  • Our approach
  • Calculate parameters rather than estimate
  • Uses the fact that tasks are dependent rather
    than reduce it into a classical RT problem
  • Contribution of paper
  • foundations of theory for engineers to reason
    rigorously about system behavior and associated
    resource needs.

11
Approach
  • First step single linear chain executing in
    cooperative environment
  • Express the execution of the system (chain) as a
    trace of the atomic actions taken by each
    component.
  • Analyze the system in terms of time and behaviour
    as a function of
  • the choice of the atomic action order in the
    components
  • the channel properties (e.g., the capacity)
  • the priority assignment
  • the timing assignment.

12
ApproachBasic concepts
  • Component program example C a b c d
  • Component alphabet set of actions taken by the
    component (A(C)a,b,c,d).
  • Alphabets disjoint ? k?l, A(Ck) ? A(Cl) ?.
  • Trace of a component sequence of actions of a
    component, recording its execution.
  • Tr(C) (a b c d)
  • Trace prefix Tr(C)(abcd), Pref(Tr(C)) (a),
    (a b), (a b c), (a b c d)
  • Prefix State Pref(Tr(C)) St(Tr(C))
  • Parallel composition of components arbitrary
    interleaving of actions
  • Ck Cl, with Ck a b and Cl c d
  • Tr(CkCl) (a b c d), (a c b d), (c a d b), (c
    d a b), (a c d b), (c a b d)

13
ApproachBasic concepts
  • Projection of a trace on an alphabet (t?A) trace
    obtained by removing all actions not in A while
    maintaining the order given in t.
  • t(abcd), A(Ck) a, b, t?A (ab)
  • (t,a) nb. of occurences of action a in trace
    t.
  • Ci while (true) do
  • receive( fqi-1, p)
  • receive( eqi, q)
  • process_fct(p,q)
  • send( eqi-1, p)
  • send( fqi, q)


Tr(Ci) (fqi-1? eqi? ci eqi-1! fqi!)?
for 1 ? i ? n.
14
Approach
  • Express the execution of the system (chain) as
    trace(s) of the atomic actions taken by each
    component.

Impose predicates until obtain trace(s) that
specifies the system behavior.
Tpc ? Tcc ? Til
15
Arbitrary interleavings traceset (Til)
  • A A(Ci),
  • Til Tr( Ci )
  • Til s s consists of elements of A ? s?A(Ci)?
    Tr(Ci), ?i, i 1..n

16
Introducing channel constraints
  • Scc imposes that no buffer is allowed to overflow
  • or underflow.
  • Scc(t) (? s?Pref(t), fqi, eqi (1 i lt n)
  • 0 (t,fqi!) - (t,fqi?) Cap( fqi) ?
  • 0 (t,eqi!) - (t,eqi?) Cap( eqi )).
  • Tcc t?Til Scc(t) channel consistent traces.

17
Introducing channel constraintsDefinitions
ready and blocked actions
  • Tcc constrained set
  • Given s from St(Tcc), a component Ci is
    ready-to-run in state s whenfor an action a in
    A(Ci) such that sa? A(Ci) is a state of Tr(Ci) we
    have that sa ? St(Tcc). Also, a is called a
    ready action of Ci in state s.
  • sa ? A(Ci) ? sa ? St(Tcc) ? a is a ready action
    in state s
  • If sa is not an element of St(Tcc) it is not
    possible to execute a in the constrained set in
    which case we say that Ci is blocked at a in
    state s of Tcc.
  • sa ? A(Ci) ? sa ? St(Tcc) ? a is a blocked
    action in state s

18
Introducing channel constraintsProperties
  • For component Ci (1lt i n), blocking at eqi-1!
  • is not possible.
  • For component Ci (1lt i n), blocking at fqi! is
    not possible.

19
Introducing precedence order constraints
  • Priority function returning for each component
    a
  • unique natural number.
  • The assignation is fixed during the entire
    execution of
  • the system.
  • Scp(t) (? s?Pref(t), ai u?A? t saiu ? ai?
    A(Ci) P(Comp(ai)) max P(C)).
  • Limiting Tcc according to Scp gives Tpc, the
    priority consistent traces Tpc ? t ? Tcc
    Scp(t).

C ?RR(s)
20
Introducing precedence order constraintsPropertie
s, Lemmas
  • Tpc has precisely one element. Unique trace in
    Tpc denoted by ?.
  • Let Ci be such that (? j jlti P(Cj) gt P(Ci))
    and consider a state s of ? such that the next
    action after s in Tpc is one of A(Ci). Then Cj b
    eqj? in s of Tcc for all jlti. (a)
  • Let Ci be such that (? j jgti P(Cj) gt P(Ci))
    and consider a state s of ? such that the next
    action after s in Tpc is one of A(Ci). Then Cj b
    fqj-1? in s of Tcc for all jgti. (b)

a).
b).
? j j lti P(Cj) gt P(Ci)
? j j gti P(Cj) gt P(Ci)
21
Stable phase characterizationTheorems,
Properties, Corollaries
  • Theorem. The pipeline system assumes a
    repetitive behavior
  • after a finite initialization phase. The complete
    behavior is
  • characterized by
  • ? tinit (fqm-1? eqm? cm eqm-1! tL fqm!
    tR)?
  • Notation.
  • tinit trace recording the initialization
    phase of the system execution.
  • tstable (fqm-1? eqm? cm eqm-1! tL fqm! tR)?.
  • tstable - trace recording the stable phase of
    the system execution.

22
Stable phase characterizationTheorems,
Properties, Corollaries
  • Theorem. The pipeline system assumes a
    repetitive behavior
  • after a finite initialization phase. The complete
    behavior is
  • characterized by
  • ? tinit (fqm-1? eqm? cm eqm-1! tL fqm!
    tR)?
  • Notation.
  • tinit trace recording the initialization
    phase of the system execution.
  • tstable (fqm-1? eqm? cm eqm-1! tL fqm! tR)?.
  • tstable - trace recording the stable phase of
    the system execution.

23
Stable phase characterizationTheorems,
Properties, Corollaries
  • The length of the initialization phase in number
    of
  • actions is
  • The length of the initialization phase can be
    reduced by decreasing m or the capacity of the of
    the queues in the system.
  • The stable phase starts when Cm executes for the
    first time.
  • When Cm executes, ? i 1 i lt m,
    L(fqi)Cap(fqi)-1 ? L(eqi)0 ? ? i m i lt n,
    L(fqi) 0 ? L(eqi)Cap(eqi).

(m-1).
24
Stable phase characterizationTheorems,
Properties, Corollaries
  • Minimum NCS
  • The minimum number of context switches (NCS)
    during the initialization phase is achieved when
    m1.
  • b. The minimum NCS during one iteration of
    tstable can be achieved either when
  • i. P(C1) min(P(Ci))

i 1..n
25
Stable phase characterizationTheorems,
Properties, Corollaries
  • or when
  • ii. P(Cn)ltP(C1)ltP(C2)ltltP(Cn-1) with
  • ?i1 iltn-1, Cap(fqi)2.

26
Stable phase characterizationTheorems,
Properties, Corollaries
  • Tradeoff
  • The priority assignment suggested by Corollary 10
    - ii implies that all context switches caused by
    preemptions were eliminated, at the cost of an
    initialization phase.
  • The priority assignment suggested by Corollary 10
    - ii. achieves a minimum NCS at the cost of more
    memory needed (? i 1 i lt n-1, Cap(fqi)2)
  • Optimizing memory needs.
  • The minimum queue capacity necessary and
    sufficient for each of the queues in the chain is
    1.

27
Timing aspects
  • Definitions
  • ? A x x Til ? that for each action
    of a component Ci returns the computation time
    needed to execute the action.
  • Schedule function ? A x x Til ? of the
    concurrent execution of Ci, i1..n processes on a
    processor. Returns the start time for each action
    of each component Ci within the concurrent
    execution of all components.

28
Timing aspects
  • Definitions
  • Response time Ri,k of component Ci (1? i ? n)
    that processes packet k is
  • Ri,k ?(fqi !k) ? (fqi !k) - ?(fqi-1?k).
  • Response time of the chain (RTC) CN as the time
    needed by all components in the chain to process
    the kth packet
  • RTCk ?(fqN!k) ? (fqN!k) - ?(fq0?k).
  • NAk is the number of actions occurring from
    arrival of packet k until the packet leaves the
    chain.

29
Timing aspects
  • NAk is minimal for all packets k when P(C1) min
    P(Ci)
  • RTCk is minimal for all packets k when P(C1)
    min P(Ci)

i 1..n
30
Conclusions
  • Presented a model for the dynamic behavior of
    linear processing chains
  • Expressed the execution of a chain as a trace
    that can be calculated at design time.
  • Formally proven that the trace becomes repetitive
    after an initial finite prefix.
  • Approach allows the calculation and optimization
    of
  • The initial phase length
  • The necessary and sufficient capacities for the
    queues
  • Number of context switches
  • Number of actions between input/output of a
    packet (component, chain)
  • Response time for a packet (component, chain)
Write a Comment
User Comments (0)
About PowerShow.com