ECE 720T5 Fall 2011 Cyber-Physical Systems Rodolfo Pellizzoni.

Slides:



Advertisements
Similar presentations
1 Real-Time Queueing Theory Presented by: John Lehoczky Carnegie Mellon SAMSI Workshop Congestion Control and Heavy Traffic.
Advertisements

Priority Inheritance and Priority Ceiling Protocols
ECE 667 Synthesis and Verification of Digital Circuits
Topic 7 Local Area Networks (LAN)
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
REAL-TIME COMMUNICATION ANALYSIS FOR NOCS WITH WORMHOLE SWITCHING Presented by Sina Gholamian, 1 09/11/2011.
Announcements Be reading Chapter 6, also Chapter 2.4 (Network Equations). HW 5 is 2.38, 6.9, 6.18, 6.30, 6.34, 6.38; do by October 6 but does not need.
Problem 12: Large Distributed Systems ECU1 BUS CC1 ECU2CC2 ECU3CC3 S1 S2 S3 S4 S5 5 Real-Time Input Streams - with jitter - with bursts - deadline > period.
Network Capacity Planning IACT 418 IACT 918 Corporate Network Planning.
Towards Feasibility Region Calculus: An End-to-end Schedulability Analysis of Real- Time Multistage Execution William Hawkins and Tarek Abdelzaher Presented.
Computer Networks Performance Metrics Advanced Computer Networks.
What's inside a router? We have yet to consider the switching function of a router - the actual transfer of datagrams from a router's incoming links to.
© 2007 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.1 Computer Networks and Internets with Internet Applications, 4e By Douglas.
I/O Channels I/O devices getting more sophisticated e.g. 3D graphics cards CPU instructs I/O controller to do transfer I/O controller does entire transfer.
PSMC Proxy Server-based Multipath Connection CS 526 Advanced Networking - Richard White.
Institut für Datentechnik und Kommunikationetze Analysis of Shared Coprocessor Accesses in MPSoCs Overview Bologna, Simon Schliecker Matthias.
Computer Networks: Performance Measures1 Computer Network Performance Measures.
October 5th, 2005 Jitter Regulation for Multiple Streams David Hay and Gabriel Scalosub Technion, Israel.
1 Lecture 24: Interconnection Networks Topics: communication latency, centralized and decentralized switches (Sections 8.1 – 8.5)
Embedded Systems Exercise 3: Scheduling Real-Time Periodic and Mixed Task Sets 18. May 2005 Alexander Maxiaguine.
Networks: Performance Measures1 Network Performance Measures.
Lecture 3. Notations and examples D. Moltchanov, TUT, Spring 2008 D. Moltchanov, TUT, Spring 2015.
Wireless Video Sensor Networks Vijaya S Malla Harish Reddy Kottam Kirankumar Srilanka.
A Tool for Describing and Evaluating Hierarchical Real-Time Bus Scheduling Policies Author: Trevor Meyerowitz, Claudio Pinello, Alberto DAC2003, June 24,2003.
Building a Strong Foundation for a Future Internet Jennifer Rexford ’91 Computer Science Department (and Electrical Engineering and the Center for IT Policy)
A Guide to major network components
Chapter 10: Architectural Design
CHAPTER 3 1. THE OSI MODEL AND THE TCP/IP PROTOCOL SUITE  Outline: 1. Protocol Layers 2. OSI Model 3. TCP/IP Model 4. Addressing 2.
End-to-End Delay Analysis for Fixed Priority Scheduling in WirelessHART Networks Abusayeed Saifullah, You Xu, Chenyang Lu, Yixin Chen.
The OSI Model and the TCP/IP Protocol Suite
EstiNet Network Simulator & Emulator 2014/06/ 尉遲仲涵.
Chapter 10 Architectural Design
1 Albert Ferrer-Florit, Steve Parkes Space Technology Centre University of Dundee QoS for SpaceWire networks SpW-RT prototyping.
CS448 Computer Networking Chapter 1 Introduction to Computer Networks Instructor: Li Ma Office: NBC 126 Phone: (713)
CSCI-235 Micro-Computer in Science The Network. © Prentice-Hall, Inc Communications  Communication is the process of sending and receiving messages 
ECE 720T5 Fall 2012 Cyber-Physical Systems Rodolfo Pellizzoni.
Protocol Architectures. Simple Protocol Architecture Not an actual architecture, but a model for how they work Similar to “pseudocode,” used for teaching.
Efficient link scheduling for online admission control of real-time traffic in wireless mesh networks P. Cappanera a, L. Lenzini b, A. Lori b, G. Stea.
CHAPTER 3 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
System bus.
Improving Capacity and Flexibility of Wireless Mesh Networks by Interface Switching Yunxia Feng, Minglu Li and Min-You Wu Presented by: Yunxia Feng Dept.
Scheduling policies for real- time embedded systems.
DESIGNING VM SCHEDULERS FOR EMBEDDED REAL-TIME APPLICATIONS Alejandro Masrur, Thomas Pfeuffer, Martin Geier, Sebastian Drössler and Samarjit Chakraborty.
1 CHAPTER 8 TELECOMMUNICATIONSANDNETWORKS. 2 TELECOMMUNICATIONS Telecommunications: Communication of all types of information, including digital data,
Embedded Runtime Reconfigurable Nodes for wireless sensor networks applications Chris Morales Kaz Onishi 1.
Computer Networks with Internet Technology William Stallings
EEE440 Computer Architecture
Computer Networks: Switching and Queuing Ivan Marsic Rutgers University Chapter 4 – Switching and Queuing Delay Models.
A Delay Composition theorem for Real-Time Pipelines P. Jayachandran T. Abdelzaher Presenter: Sina Meraji.
Interconnect simulation. Different levels for Evaluating an architecture Numerical models – Mathematic formulations to obtain performance characteristics.
A Utility-based Approach to Scheduling Multimedia Streams in P2P Systems Fang Chen Computer Science Dept. University of California, Riverside
EE 122: Lecture 15 (Quality of Service) Ion Stoica October 25, 2001.
Dzmitry Kliazovich University of Luxembourg, Luxembourg
Introduction to Embedded Systems Rabie A. Ramadan 5.
Computer Simulation of Networks ECE/CSC 777: Telecommunications Network Design Fall, 2013, Rudra Dutta.
Networks and Distributed Systems Sarah Diesburg Operating Systems COP 4610.
Virtual-Channel Flow Control William J. Dally
ECE 720T5 Fall 2012 Cyber-Physical Systems Rodolfo Pellizzoni.
Undergraduate course on Real-time Systems Linköping University TDDD07 Real-time Systems Lecture 2: Scheduling II Simin Nadjm-Tehrani Real-time Systems.
Chi-Cheng Lin, Winona State University CS412 Introduction to Computer Networking & Telecommunication Data Link Layer Part II – Sliding Window Protocols.
6/12/2016© 2010 Raymond P. Jefferis IIILect The Network Layer.
ECE 720T5 Fall 2012 Cyber-Physical Systems
Computer Network Performance Measures
Mobile ad hoc networking: imperatives and challenges
Computer Network Performance Measures
NET 424: REAL-TIME SYSTEMS (Practical Part)
Leonie Ahrendts, Sophie Quinton, Thomas Boroske, Rolf Ernst
Presentation transcript:

ECE 720T5 Fall 2011 Cyber-Physical Systems Rodolfo Pellizzoni

/ 47 Topic Today: End-To-End Analysis HW platform comprises multiple resources –Processing Elements –Communication Links SW model consists of multiple independent flows or transactions –Each flow traverses a fixed sequence of resources –Task = flow execution on one resource –We are interested in computing its end-to-end delay 2 R1 R2 R3 R4 f1f1

/ 47 Analyses: Model 3 AnalysisTask ModelResource Model ArbitrationDeadlines Network Calculus / Real-Time Calculus General arrival model General service model Any; works better for independent policies No assumption Holistic Analysis Periodic / Sporadic Transactions Fixed times per-task Independent (TDMA), FP, EDF Any deadline Delay AnalysisAperiodic (can be extended to periodic but it works worse) Fixed times per-task Independent, FP Any; for periodic, works better for D <= period Flow-based latency analysis Periodic / Sporadic Transactions Fixed per- transaction time; uni- directional FP<= period (could be extended)

/ 47 Pipeline Delay f 1 and f 2 share more than one contiguous resources. Can the analysis take advantage of this information? –If f 2 “gets ahead” of f 1 on R2, it is likely to cause less interference on R3. 4 R1 R2 R3 R4 f1f1 f2f2

/ 47 Transitive Delay f 2 and f 3 both interfere with f 1, but only one at a time. Can the analysis take advantage of this information? 5 R1 R2 R3 R4 f1f1 f2f2 f3f3

/ 47 Analyses: Model 6 AnalysisInterference increases with # resources? Pipeline Delay Considered? Transitive Delay Considered? Network Calculus / Real-Time Calculus Superlinear (down to almost constant in some cases) NoYes Holistic AnalysisGenerally linear in # different resources No (partial if flow revisits resource) Yes Delay AnalysisAlmost constantYesNo (partial extension) Flow-based latency analysis Almost constantYes (Partial for Link- Level Analysis) No (Yes for Link- Level Analysis)

Holistic Analysis 7

/ 47 Transaction Model (Tasks with Offsets) 8 Fast and Tight Response-Times for Tasks with Offsets Schedulability Analysis for Tasks with Static and Dynamic Offsets. Improved Schedulability Analysis of Real-Time Transactions with Earliest Deadline Scheduling

/ 47 Holistic Analysis 1.Start with offsets = cumulative computation times. 2.Compute worst-case response times. 3.Update release jitter. 4.Go back to step 2 until convergence to fixed-point (or end- to-end response time > deadline). 9

/ 47 Can you model Wormhole Routing? Sure you can! For a flow with K flits, simply assume there are K transactions –Assign artificially decreasing priorities to the K transactions to best model the precedence constraint among flits. The problem is that response time analysis for transaction models do not take into account relations among different resources – can not take advantage of pipeline delay. 10

/ 47 Response Time Analysis Let’s focus on a single resource – note a flow might visit a resource multiple times. The worst-case is produced when a task for each interfering transaction is released at the critical instant after suffering worst- case jitter. –Tasks activated before the critical instant are delayed (by jitter) until the critical instant if feasible –Tasks activated after the critical instant suffer no jitter EDF: the task under analysis has deadline = to the deadline of any interfering task in the busy period RM: a task of the transaction under analysis is released at the critical instant –Same assumptions for all other tasks of the transactions –In both cases, we need to try out all possibilities 11

/ 47 Response Time Analysis Problem: the number of possible activation patterns is exponential –For each interfering transaction, we can pick any task –Hence the number of combinations is exponential in the number of transactions. Solution: compute a worst-case interference pattern over all possible starting tasks for a given interfering transaction. For the transaction under analysis we still analyze all possible patterns. 12

/ 47 Example 13 Transaction under analysis: single task with C = 2

/ 47 Tighter Analysis 14 Key idea: use slanted stairs instead

/ 47 Removing Jitter Jitters introduce variability – increase w-case response time Alternative: time-trigger all tasks. 1.Start with offsets = cumulative computation times. 2.Compute worst-case response times. 3.Modify offsets. 4.Go back to step 2 until convergence or divergence However convergence is trickier now! 15

/ 47 Cyclic-Dynamic Offsets 16 Response time can decrease as a result of modifying offsets. –Always increasing as jitter increases We can prove that it is sufficient to check for limit cycles.

/ 47 Pipeline Delay 17 T 2 higher priority. All Ctime = 1. With Jitter… O = 0 R = 2 J = 0 O = 2 R = 7! J = 2 O = 1 R = 4 J = 1 O = 4 R = 11 J = 5 O = 5 R = 13 J = 6 O = 6 R = 15 J = 7 O = 3 R = 9 J = 4

/ 47 Pipeline Delay 18 T 2 higher priority. All Ctime = 1. With Offsets… O = 0 R = 2 O = 4 R = 6 O = 2 R = 4 O = 8 R = 10 O = 10 R = 12 O = 12 R = 14 O = 6 R = 8

Delay Calculus 19

/ 47 Delay Calculus End-To-End Delay Analysis of Distributed Systems with Cycles in the Task Graph System Model: –Aperiodic flows (each called a job) –Each job has the same fixed priority on all resources (nodes) –Arbitrary path through nodes (stages) – can include cycles –Each stage can have a different computation time How to model worm-hole routing –Use one job for each flit 20

/ 47 Break the Cycles f 1 lowest-priority flow under analysis f 2 is broken into two non-cyclic folds: (1, 2, 3) and (2, 3, 4) The two segments that overlaps with f 1 are: (1, 2, 3) and (2, 3) Solution: consider f 1(1, 2, 3) and f 1(2,3) as separate flows. 21 R1 R2 R3 R4 f2f2 f1f1

/ 47 Types of Interfering Flows 22

/ 47 Execution Trace 23 Earliest trace: earliest job finishing time on each stage such that there is no idle time at the end.

/ 47 Delay Bounds Each cross-flow segment and reserve-flow segment contributes one stage computation time to the earliest trace What about forward flows? 24 S1 f1f1 f1f1 f2f2 f2f2 S2 f1f1 f1f1 f2f2 f2f2 S3 f2f2 f2f2 S4 f2f2 f2f2 f1f1 f1f1 f1f1 f1f1 f 2 on the last stage it delays f 1 f 2 preempting lower-priority job one execution of the longest job on each stage

/ 47 Delay Bounds Preemptive Case: Non-Preemptive Case: 25 2 max executions for each higher priority segment Max exec time for each stage No preemption means one max execution for higher priority segment… … but we have to pay one max execution of blocking time on each stage

/ 47 Pipeline Delay - Preemptive 26 T 2 higher priority. All Ctime = 1. T 1 response time = 9.

/ 47 The Periodic Case Now assume jobs are produced by periodic activations… Trick: reduce cyclic system to an equivalent uniprocessor system. For preemptive case: –Replace each segment with a periodic task with ctime = –Replace the flow under analysis with a task with ctime = Schedulability can then be checked with any uniprocessor test (utilization bound, response time analysis). 27

/ 47 Transitive Delay All Ctime = 1, non-preemptive. Let’s assume T 2 = T 3 = 2, deadline = period. Then U 2 = ½, U 3 = ½ and the system is not schedulable… In reality the worst-case response time of f 1 is S1 S2 f1f1 f2f2 f3f3

/ 47 Other issues… What happens if deadline > period? –Add an addition floor(deadline/period) instances of the higher priority job. –Self blocking: the flow under analysis can block itself. Hence, consider its previous instances as another, higher priority flow. What happens if a flow suffers jitter (i.e., indirect blocking)? –Add an additional ceil(jitter/period) instances. –Note: all reverse flows have this issue… Lots of added terms -> bad analysis for low number of stages. 29

/ 47 When does it perform well? 30 Send request to a server, get answer back. Same path for all request/response pairs! Hundreds of tasks.

Network Calculus 31

/ 47 Aggregate Traffic Assumption: we do not know the arbitration employed by the router. Solution: consider each flow as the lowest-priority one. 32

/ 47 Network Solution Problem: the burstiness values at stages 1, 2 are interdependent. Solution: write a system of equations 33

/ 47 Network Stability We need to compute I - A can be inverted iff all eigenvalues of A have module <= 1. The eigenvalues of the matrix are and. Solving for rho: Note: for bus utilizations > 76.4%, we can not find a solution. Does a solution exist in such a case? –Yes, following delay calculus, each bit of f 1 can only delay f 2 on one node. –However, for more complex topologies (transitive delay) this is an open problem. 34

Modular performance analysis 35

/ 47 Modular Performance Analysis System Architecture evaluation using modular performance analysis: a case study An application of network calculus to early system performance analysis and design exploration. Real-time calculus: extension to network-calculus. –Introduces lower arrival curves and upper service curves –A more structured approach to system description and multiple flows analysis 36

/ 47 Upper and Lower Curves 37 arrival curve - period task arrival curve – period task with jitter service curve – link with zero delay service curve – TDMA

/ 47 Abstract Component 38

/ 47 Network of Components 39

/ 47 Another Example: Real-Time Bridge 40 Incoming flow Outgoing flow, Network A Outgoing flows, Network B Sporadic Server (reservations) Bus Scheduling Network Transmission Scheduling

/ 47 Design Flow 41

/ 47 Case Study: Radio Navigation System 42

/ 47 Example: Change Volume Sequence Diagram 43

/ 47 Architectural Alternatives 44

/ 47 Model: Architecture A 45

/ 47 End-To-End Delay 46

/ 47 Sensitivity to Resource Capacity 47