Q uantitative E valuation of E mbedded S ystems QUESTION DURING CLASS?
Q uantitative E valuation of E mbedded S ystems 1.Matrix equations - revisited 2.Monotonicity 3.Eigenvalues and throughput 4.Eigenvalues and the MCM
Q uantitative E valuation of E mbedded S ystems 1.Matrix equations - revisited 2.Monotonicity 3.Eigenvalues and throughput 4.Eigenvalues and the MCM
0 ms y Cycles with a 0 execution time cause livelocks But when logging events, this is mathematically okay...
AB C D 1ms 2ms 4ms u y 3ms Theorem: The number of tokens on any cycle is constant! Therefore, every cycle must contain at least one token, otherwise a deadlock occurs.
Using induction
Q uantitative E valuation of E mbedded S ystems 1.Matrix equations - revisited 2.Monotonicity 3.Eigenvalues and throughput 4.Eigenvalues and the MCM
Theorem: (max,+) matrix addition is a monotone operator
Given that x(1) = 0 and for all n : u(n) ≥ 0
A B C 1ms 2ms u x3x3 y x1x1 x2x2 3ms
Time (s) Tokens Theorem: (max,+) matrix addition is a monotone operator and as a consequence, removing the input gives a best-case approximation of behavior.
Q uantitative E valuation of E mbedded S ystems 1.Matrix equations - revisited 2.Monotonicity 3.Eigenvalues and throughput 4.Eigenvalues and the MCM
In linear algebra... a pair (x, λ) is an eigenpair for a matrix A if: with denoting elementwise multiplication and assuming that
In (max,+) algebra... a pair (x, λ) is an eigenpair for a matrix A if: with denoting elementwise addition and assuming that
In linear algebra, we find for any eigenpair (x, λ) that If (x, λ) is an eigenpair then so is (αx, λ), for any scalar α
And so, in (max,+) algebra we find for any eigenpair (x, λ) If (x, λ) is an eigenpair then so is (α+x, λ), for any shift α
A B C 1ms 2ms x3x3 y x1x1 x2x2 3ms
for a given eigenpair (x,λ) with x≤0
Time (s) Tokens
Time (s) Tokens Theorem: The best-case throughput is always smaller than 1/λ, with λ the biggest eigenvalue of the associated matrix.
Q uantitative E valuation of E mbedded S ystems 1.Matrix equations - revisited 2.Monotonicity 3.Eigenvalues and throughput 4.Eigenvalues and the MCM
A B C 1ms 2ms x3x3 y x1x1 x2x2 3ms
A B C 1ms 2ms x3x3 y x1x1 x2x2 3ms where A l (k,k) is the duration of some cycle with l tokens on it hence λ = A l (k,k) /l is a cycle mean. Theorem: Every eigenvalue is the cycle mean of some cycle...
A B C 1ms 2ms x3x3 y x1x1 x2x2 3ms Let λ=MCM and x i represent a critical token... Now given matrix A of a dataflow graph, let us construct the following two matrices: In an entry (i,j) represents the max duration of any path from i to j minus λ for each token on that path.
A B C 1ms 2ms x3x3 y x1x1 x2x2 3ms Since x i represents a critical token: So for the i th column we find: And consequently: So is an eigenpair of A Theorem: The maximal cycle mean of a graph is the maximum eigenvalue of its (max,+) matrix. In an entry (i,j) represents the max duration of any path from i to j minus λ for each token on that path.
The maximal cycle mean of a graph is the maximum eigenvalue of its (max,+) matrix and 1/MCM is the maximal throughput. See the book by [Baccelli, Cohen, Olsder and Quadrat] for more! Like for the question “can the 1/MCM throughput actually be achieved?” Every eigenvalue is the cycle mean of some cycle... But not every cycle mean is an eigenvalue! (max,+) matrix addition is a monotone operator Thus removing the input gives a best-case approximation of behavior.
Simulate 6 firings
Give the (max,+) matrix equations
Calculate the MCM
Determine a periodic schedule for arbitrary µ
Plot the latency for a period µ
Optimize the periodic schedule for µ = 15
Optimize the periodic schedule for arbitrary µ
Plot the delayed latency for a period µ
Plot the minimal delay for a period µ
Optimize the periodic schedule for arbitrary µ