Liveness and Boundedness of Synchronous Data Flow Graphs - PowerPoint PPT Presentation

About This Presentation
Title:

Liveness and Boundedness of Synchronous Data Flow Graphs

Description:

Liveness and Boundedness of Synchronous Data Flow Graphs A.H. Ghamarian, M.C.W Geilen, T. Basten, B. Theelen, M. Mousavi, and S. Stuijk – PowerPoint PPT presentation

Number of Views:95
Avg rating:3.0/5.0
Slides: 23
Provided by: Sande235
Category:

less

Transcript and Presenter's Notes

Title: Liveness and Boundedness of Synchronous Data Flow Graphs


1
Liveness and Boundedness of Synchronous Data Flow
Graphs
  • A.H. Ghamarian, M.C.W Geilen, T. Basten, B.
    Theelen, M. Mousavi, and S. Stuijk

2
Outline
  • Introduction
  • Synchronous Data Flow Graphs (SDFGs)
  • Definition of Liveness and Boundedness
  • Live and Bounded SDFGs
  • Live and Strictly Bounded SDFGs
  • Live and Self-timed Bounded SDFGs
  • Conclusions

boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
3
Introduction
  • Streaming Multimedia and DSP Applications
  • Throughput
  • Buffer sizes
  • SDFG
  • Modeling and analysis
  • Single and multiprocessor platforms

Given an SDFG,is it realizable within bounded
memory while running forever ?
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
4
Structure of a (Timed) SDFG
actor
Self-loop channel
channel (unbounded)
execution time
3
3
2
1
1
C,1
A,2
B,1
1
1
2
3
1
rate
token
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
5
Behavior Firing an Actor
A,1
1
2
2
2
1
D,1
B, 1
2
2
5
3
3
1
4
1
C, 1
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
6
Behavior Execution and Self-timed Execution
  • An execution is a finite or infinite sequence of
    actor firings.
  • An execution is maximal iff it is finite with no
    actor enabled in the final state or if it is
    infinite.
  • A self-timed execution is an execution in which
    each actor fires as soon as it can fire.

boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
7
Consistency and Repetition Vector
3
3
2
C,1
A,2
B,1
1
1
2
3
1
1.q(A)1.q(A) 1.q(A)1.q(B) 2.q(B)3.q(C) 3.q(C)2
.q(B)
Repetition vector q(A,3), (B,3), (C,2)
An SDFG is consistent iff q(A) gt 0 for all actors
A
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
8
Liveness and Deadlock
  • An SDFG is live iff it has an execution in which
    all actors fire infinitely often.
  • An SDFG has a deadlock iff it has a maximal
    execution of finite length.

Consistent, but neither live nor deadlocked !
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
9
Boundedness
  • An execution is bounded iff for all states of the
    execution the number of tokens in all channels is
    at most some bound.
  • SDFG
  • bounded iff it has a bounded execution.
    ((un-)timed)
  • Strictly bounded iff all possible executions are
    bounded. ((un-)timed)
  • Self-timed bounded iff self-timed execution is
    bounded. (timed)

Necessary and sufficient conditions for an SDFG
to be live in combination with each of the three
definitions of boundedness.
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
10
Liveness and Boundedness
  • A live SDFG is bounded iff it is consistent.
  • A strongly connected SDFG is live iff it is
    deadlock free.
  • If one strongly connected component (SCC) in an
    SDFG G deadlocks then either G deadlocks or it is
    unbounded.

An SDFG is live and bounded iff it is consistent
and all its SCCs are deadlock free.
3
3
2
(A,3), (B, 3), (C, 2)
C,1
A,2
B,1
1
1
2
3
1
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
11
Liveness and Strict Boundedness
  • A live SDFG is strictly bounded iff it is
    consistent and strongly connected.

3
3
2
C,1
B,1
5
3
2
1
An SDFG is live and strictly bounded iff it is
deadlock free, consistent and strongly connected.
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
12
Throughput Definition
  • Actor throughput
  • The average number of firings of one actor per
    time unit in the self-timed execution.
  • (Normalized) graph throughput (if SDFG is
    consistent)

boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
13
Local and Normalized Throughput
Each firing of a provides tokens for p/c firings
of b.
p
c
b
a
Normalized actor throughput of a for b
x
a,E
Local actor throughput
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
14
Throughput Relation between Actors
Throughput of each actor equals the minimum of
its local throughput and normalized throughput of
its predecessors.
1/2
NTh(b,a)1/4NTh(c,a)4/3NTh(d,a)3
Th(b)1Th(c)2Th(d)3
1
b
1/4
4
a,1
3
2
c
4/3
LTh(a)1/2
2
d
3
2
Th(a)1/4
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
15
Main Rule for Self-timed Boundedness
p
c
b
a
A channel between a and b is self-timed bounded
iff
Golden Rule
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
16
Liveness and Self-timed Boundedness for Acyclic
SDFGs
  • Liveness and self-timed boundedness for an
    acyclic SDFG
  • Acyclic SDFGs are live ?
  • Checking self-timed boundedness for acyclic SDFGs
  • Calculate the throughput for all actors
  • Sort the graph topologically
  • Calculate the throughput for the source actors
    (actors without any predecessors) and propagate
    the calculation
  • For each channel between actors a and b check the
    golden rule.

boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
17
Example for Acyclic SDFGs
1
b
1/4
4
a,1
1/4
3
Self-timed unbounded !!!
2
C
4/3
2
d
3
2
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
18
Reduction
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
19
Properties of the Reduced SDFG
  • The reduction preserves
  • Throughput
  • Self-timed boundedness
  • Liveness

boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
20
Example for a General SDFG
3
3
2
C,1
A,2
B,1
1
1
2
3
1
x2,4
x1,6
1/6 lt 1/4
Self-timed bounded ?
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
21
Conclusions
  • Necessary and sufficient conditions for checking
  • Liveness and boundedness of (timed) SDFGs
  • Liveness and strict boundedness of (timed) SDFGs
  • Liveness and self-timed boundedness of timed
    SDFGs
  • Throughput calculations for general SDFGs (not
    necessarily strongly connected!)

boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
22
Questions
boundedness
intro
definitions
strict bndss
self-tmd bndss
conclusions
sdf
Write a Comment
User Comments (0)
About PowerShow.com