hardware software codesign
play

Hardware-Software Codesign 10. Performance Analysis of Distributed - PowerPoint PPT Presentation

Hardware-Software Codesign 10. Performance Analysis of Distributed Embedded Systems Lothar Thiele 10 - 1 System Design Specification System Synthesis Estimation SW-Compilation Instruction Set HW-Synthesis Intellectual Intellectual


  1. Hardware-Software Codesign 10. Performance Analysis of Distributed Embedded Systems Lothar Thiele 10 - 1

  2. System Design Specification System Synthesis Estimation SW-Compilation Instruction Set HW-Synthesis Intellectual Intellectual Prop. Code Prop. Block Machine Code Net lists Swiss Federal Computer Engineering 10 - 2 Institute of Technology and Networks Laboratory

  3. Contents Overview Real-Time Calculus Modular Performance Analysis Examples Swiss Federal Computer Engineering 10 - 3 Institute of Technology and Networks Laboratory

  4. Formal Analysis vs. Simulation e.g. delay upper bound Worst-Case Best-Case lower bound Real System Simulation Formal analysis Swiss Federal Computer Engineering 10 - 4 Institute of Technology and Networks Laboratory

  5. Analysis and Design Embedded System = Computation + Communication + Resource Interaction Analysis: Infer system properties from subsystem properties. Design: Build a system from subsystems while meeting requirements. Swiss Federal Computer Engineering 10 - 5 Institute of Technology and Networks Laboratory

  6. Modular Performance Analysis architecture Task graphs diagrams Application Architecture Mapping Scheduling Data Measure- sheets ments System Model WCET Formal Analysis specification Service Model (Resources) Performance Processing Model Model (Tasks & Scheduling) Load Model (Environment) Analysis Formal Input traces specification Analysis Results Swiss Federal Computer Engineering 10 - 6 Institute of Technology and Networks Laboratory

  7. Abstract Models for Performance Analysis Processor Task Input Stream Concrete Instance Abstract Representation Service Model Load Processing Model Model Swiss Federal Computer Engineering 10 - 7 Institute of Technology and Networks Laboratory

  8. Modular System Composition CPU BUS DSP RM TDMA TDMA GPC GPC GSC GPC GPC GPC Swiss Federal Computer Engineering 10 - 8 Institute of Technology and Networks Laboratory

  9. Overview Swiss Federal Computer Engineering 10 - 9 Institute of Technology and Networks Laboratory

  10. Contents Overview Real-Time Calculus Modular Performance Analysis Examples Swiss Federal Computer Engineering 10 - 10 Institute of Technology and Networks Laboratory

  11. Foundation Real-Time Calculus can be regarded as a worst- case/best-case variant of classical queuing theory . It is a formal method for the analysis of distributed real-time embedded systems. Related Work :  Min-Plus Algebra : F. Baccelli, G. Cohen, G. J. Olster, and J. P. Quadrat, Synchronization and Linearity --- An Algebra for Discrete Event Systems, Wiley, New York, 1992.  Network Calculus : J.-Y. Le Boudec and P. Thiran, Network Calculus - A Theory of Deterministic Queuing Systems for the Internet, Lecture Notes in Computer Science, vol. 2050, Springer Verlag, 2001. Swiss Federal Computer Engineering 10 - 11 Institute of Technology and Networks Laboratory

  12. Comparison of Algebraic Structures Algebraic structure  set of elements  one or more operators defined on elements of this set Algebraic structures with two operators  plus-times:  min-plus: Infimum :  The infimum of a subset of some set is the greatest element, not necessarily in the subset, that is less than or equal to all other elements of the subset.  Swiss Federal Computer Engineering 10 - 12 Institute of Technology and Networks Laboratory

  13. Comparison of Algebraic Structures Joint properties : Example :  plus-times:  min-plus: Swiss Federal Computer Engineering 10 - 13 Institute of Technology and Networks Laboratory

  14. Comparison of Algebraic Structures Joint properties : Differences :  plus-times : Existence of a negative element for :  min-plus : Idempotency of : Swiss Federal Computer Engineering 10 - 14 Institute of Technology and Networks Laboratory

  15. Comparison of System Theories Plus-times system theory  signals, impulse response, convolution, time-domain Min-plus system theory  streams, variability curves, time-interval domain, convolution Swiss Federal Computer Engineering 10 - 15 Institute of Technology and Networks Laboratory

  16. Abstract Models for Performance Analysis C(t) Processor Task Input Stream R’(t) R(t) Concrete Instance Abstract Representation Service Model β ( ∆ ) Load Processing Model α ( ∆ ) Model Swiss Federal Computer Engineering 10 - 16 Institute of Technology and Networks Laboratory

  17. From Streams to Cumulative Functions Data streams : R(t) = number of events in [0, t) Resource stream : C(t) = available resource in [0, t) R(t) C(t) Swiss Federal Computer Engineering 10 - 17 Institute of Technology and Networks Laboratory

  18. From Event Streams to Arrival Curves events Event Stream number of events in in t=[0 .. 2.5] ms t 2.5 t [ms] Arrival Curves α = [ α l , α u ] ∆ events α u α l maximum / minimum arriving events in any interval of length 2.5 ms 2.5 ∆ [ms] Swiss Federal Computer Engineering 10 - 18 Institute of Technology and Networks Laboratory

  19. From Resources to Service Curves availability Resource Availability available service in t=[0 .. 2.5] ms t 2.5 t [ms] Service Curves β = [ β l , β u ] ∆ β u service β l maximum/minimum available service in any interval of length 2.5 ms 2.5 ∆ [ms] Swiss Federal Computer Engineering 10 - 19 Institute of Technology and Networks Laboratory

  20. Example 1: Periodic with Jitter A common event pattern that is used in literature can be specified by the parameter triple ( p, j, d ), where p denotes the period, j the jitter, and d the minimum inter-arrival distance of events in the modeled stream. periodic p periodic jitter p j ≥ d Swiss Federal Computer Engineering 10 - 20 Institute of Technology and Networks Laboratory

  21. Example 1: Periodic with Jitter periodic periodic with jitter Swiss Federal Computer Engineering 10 - 21 Institute of Technology and Networks Laboratory

  22. Example 1: Periodic with Jitter Arrival curves : Swiss Federal Computer Engineering 10 - 22 Institute of Technology and Networks Laboratory

  23. Example 2: TDMA Resource Consider a real-time system consisting of n applications that are executed on a resource with bandwidth B that controls resource access using a TDMA policy . Analogously, we could consider a distributed system with n communicating nodes , that communicate via a shared bus with bandwidth B , with a bus arbitrator that implements a TDMA policy. TDMA policy : In every TDMA cycle of length , one single c resource slot of length s i is assigned to application i . appl.2 ... appl. n appl.2 ... appl. n appl.1 appl.1 c c s n Swiss Federal Computer Engineering 10 - 23 Institute of Technology and Networks Laboratory

  24. Example 2: TDMA Resource Service curves available to the applications / node i: B s i s i c-s i 2 c c Swiss Federal Computer Engineering 10 - 24 Institute of Technology and Networks Laboratory

  25. Greedy Processing Component (GPC) available resources FIFO buffer input output event event GPC stream stream remaining resources Examples:  computation (event – task instance, resource – computing resource [tasks/second])  communication (event – data packet, resource – bandwidth [packets/second]) Swiss Federal Computer Engineering 10 - 25 Institute of Technology and Networks Laboratory

  26. Greedy Processing Component Behavioral Description • Component is triggered by incoming events. • A fully preemptable task is instantiated at every event arrival GPC to process the incoming event. • Active tasks are processed in a greedy fashion in FIFO order. • Processing is restricted by the availability of resources. Swiss Federal Computer Engineering 10 - 26 Institute of Technology and Networks Laboratory

  27. Greedy Processing Component (GPC) Conservation Laws C(t) C(t) R(t) R(t) R’(t) GPC R’(t) C’(t) t Swiss Federal Computer Engineering 10 - 27 Institute of Technology and Networks Laboratory

  28. Greedy Processing For all times u ≤ t we have R’(u) ≤ R(u) (conservation law). We also have R’(t) ≤ R’(u)+C(t)–C(u) as the output can not be larger than the available resources. Combining both statements yields R’(t) ≤ R(u) + C(t) – C(u). Let us suppose that u* is the last time before t with an empty buffer. We have R(u*) = R’(u*) at u* and also R’(t) = R’(u*) + C(t) – C(u*) as all available resources are used to produce output. Therefore, R’(t) = R(u*) + C(t) – C(u*). As a result, we obtain B(t) u* t Swiss Federal Computer Engineering 10 - 28 Institute of Technology and Networks Laboratory

  29. Abstract Models for Performance Analysis C(t) Processor Task Input Stream R’(t) R(t) Concrete Instance Abstract Representation Service Model β ( ∆ ) Load Processing Model α ( ∆ ) Model Swiss Federal Computer Engineering 10 - 29 Institute of Technology and Networks Laboratory

  30. Abstraction GPC GPC time domain time-interval domain cumulative functions variability curves Swiss Federal Computer Engineering 10 - 30 Institute of Technology and Networks Laboratory

Recommend


More recommend