Mapping and architecture exploration
|
|
- Karin McCoy
- 5 years ago
- Views:
Transcription
1 Mapping and architecture exploration onfigure the resources, e.g. the size of an internal memory, width of a bus. Map the processes to the resources. ompile the processes in terms of the services provided by the mapped resources: SP PU HW HW ffective scheduling of process operations mapped to a PU is a key issue: reduce the context-switching between tasks for efficient execution increase data coherency among processes for efficient memory usage
2 Scheduling lassification ynamic scheduling Make all scheduling decisions at run-time ontext switch overhead Static scheduling Make all scheduling decisions at compile-time Reduce context switch overhead Restricted to specification without data-dependent controls (e.g. if-then-else) Quasi-static scheduling llow specification to have data-dependent controls Perform static scheduling as much as possible Leave data-dependent choices resolved at run-time
3 Quasi-static scheduling QSS Sequentialize concurrent operations as much as possible. better starting point for code generation technologies: Straight-line code across function blocks ounded memory usage during the code execution
4 Scheduling concurrent programs T STRT T while(1){ read(t, d, 1); = d * d; write(port,, 1); PORT IN STRT while(1){ read(strt, N, 1); for(i=0,y=0;i<n;i++){ read(in, x, 2); y = y+x[0]+2*x[1]; write(out, y, 1); OUT while(1){ read(strt, N, 1); for(i=0,y=0;i<n;i++){ read(t, d, 1); = d * d; x[0] = ; read(t, d, 1); = d * d; x[1] = ; y = y+x[0]+2*x[1]; write(out, y, 1); OUT
5 Outline The problem and an approach Petri Net: a model for capturing the behavior of a program efinition of a schedule n algorithm n application to MP2 decoder The effectiveness The outstanding problem: alse Path Problem pproaches for the alse Path Problem ong s observation uture directions
6 Scheduling concurrent programs STRT T while(1){ read(t, d, 1); = d * d; write(port,, 1); PORT IN while(1){ read(strt, N, 1); for(i=0,y=0;i<n;i++){ read(in, x, 2); y = y+x[0]+2*x[1]; write(out, y, 1); OUT STRT T PORT and are in conflict. We call {, an qual hoice Set (S). IN 2 OUT
7 Scheduling concurrent programs STRT T while(1){ read(t, d, 1); = d * d; write(port,, 1); PORT IN while(1){ read(strt, N, 1); for(i=0,y=0;i<n;i++){ read(in, x, 2); y = y+x[0]+2*x[1]; write(out, y, 1); OUT STRT T 2 OUT and are in conflict. We call {, an qual hoice Set (S).
8 Scheduling concurrent programs STRT 1 T OUT T 3,8 1,2,8 STRT 2,6 2,5,6 2,7 2,8 2,6,9 OUT 2,4,8 T 1,2, 4,8 3,4,8 2,4 4,8 One node r associated with the initial marking. ll and only transitions of an enabled S from each node. path to the node r from each node.
9 inding a schedule on the Petri net STRT p1 T p3 p4 2 p2 p5 p7 p8 p6 p9 OUT : r : r : r : v2 r (p2 p6) STRT v1 (p2 p5 p6) Two checks when a node is created: v2 (p2 p7) 1. Termination conditions 2. v5 ncestor (p2 p8) with v3 (p2 the p6 same p9) marking T OUT v4 (p2 p6) : r : r T : v2 : v2 v6 (p2 p4 p4 p8) v7 (p2 p7) : the node at which a cycle was found.
10 inding a schedule on the Petri net STRT p5 p6 r (p2 p6) STRT v1 (p2 p5 p6) OUT p7 v2 (p2 p7) p1 T p3 p2 p4 2 p8 p9 OUT v5 (p2 p8) T v3 (p2 p6 p9) T v6 (p2 p4 p4 p8)
11 enerating code from a schedule r (p2 p6) STRT v1 (p2 p5 p6) OUT T STRT T v2 (p2 p7) v5 (p2 p8) v3 (p2 p6 p9) T Start: read(strt, N, 1); i=0; y=0; : if(i < N){ read(t, d, 1); = d*d; x[0] = ; read(t, d, 1); = d*d; x[1] = ; y=y+x[0]+2*x[1]; i++; goto ; else{ write(out, y, 1); goto Start; v6 (p2 p4 p4 p8) OUT
12 Properties of the algorithm laim1: If the algorithm terminates successfully, a schedule is obtained. - The schedule provides an upper bound on memories required for communicating data. laim2: If the algorithm does NOT terminate successfully, no schedule exists under given termination conditions.
13 Improving efficiency Which transition to choose at each node? ind sequences of transitions to create cycles. T-invariants: a basis of the linear system x = 0 r (p2 p6) STRT v1 (p2 p5 p6) v2 (p2 p7) [i, j]: # of tokens produced to the i-th place by the j-th transition. v3 (p2 p6 p9) OUT T-invariants: T STRT OUT [ ] [ ] STRT hoose a T-invariant using a heuristic, and use it as much as possible. p1 T p3 p4 2 p2 p5 p7 p8 p6 p9 OUT
14 inding a schedule on the Petri net STRT p5 p6 r (p2 p6) STRT v1 (p2 p5 p6) OUT p7 v2 (p2 p7) p1 T p3 p2 p4 2 p8 p9 OUT v5 (p2 p8) T v3 (p2 p6 p9) T v6 (p2 p4 p4 p8)
15 The MP2 decoder Part of a complete commercial video decoder escribed in YPI (developed at Philips) based on Kahn Process Network partially translated into low to apply QSS 11 processes 5000 lines of code of ++ code 45 IOs Hdr Vld ecmv Predict Mem Out ISIQ IT dd WriteM Manager
16 The MP2 decoder mbout Predict smbc = prop.skipped_cnt; while (smbc > 0) { opredictionskipped(<params>); Write(mbOut, mb_p); smbc--; /* Other Predict stuff here */ mbin dd mb_dout smbc = mb_prop.skipped_cnt; while (smbc > 0) { Read(mbIn, mb_p); Write(mb_dOut, mb_p); smbc--; /* Other dd stuff here */
17 The MP2 decoder smbc = prop.skipped_cnt; while (smbc > 0) { opredictionskipped(<params>); Write(mbOut, mb_p); smbc--; /* Other Predict stuff here */ smbc = mb_prop.skipped_cnt; while (smbc > 0) { Read(mbIn, mb_p); Write(mb_dOut, mb_p); smbc--; /* Other dd stuff here */ Various optimizations still possible: remove unused variables remove unused communications Predict_smbc = Predict_prop.skipped_cnt; dd_smbc = dd_ mb_prop.skipped_cnt looplabel: (void) (dd_smbc > 0); if (Predict_smbc > 0) { opredictionskipped(<params>); Write(mbOut, Predict_mb_p, 1); Read(mbIn, dd_mb_p, 1); Write(mb_dOut, dd_mb_p, 1); Predict_smbc--; dd_smbc--; goto looplabel; else if (!(Predict_smbc > 0) {
18 The MP2 decoder Total MP Testench OS Total vld+hdr 5 blocks Philips QSS blocks Total omputation ommunication Philips QSS Performance improved by 45% reduction of communication (no internal IOs between statically scheduled processes) reduction of run-time scheduling (OS) no reduction in computation
19 Outline The problem and an approach Petri Net: a model for capturing the behavior of a program efinition of a schedule n algorithm n application to MP2 decoder The effectiveness The outstanding problem: alse Path Problem pproaches for the alse Path Problem onventional approaches ong s observation uture directions
20 alse paths in scheduling concurrent programs IN while(1){ N=read(IN); write(x, N); for(i=0;i<n;i++){ write(y, [i]); X Y X Y while(1){ M=read(X); for(j=0;j<m;j++){ [j]=read(y); X Y H
21 alse paths in scheduling concurrent programs X Y H j<m? alse state 1,6 1,4 N=read(IN); write(x,n); i=0; 2,X,4 M=read(X); j=0; 2,5 i<n? 1,5 3,Y,5 3,Y,6 j<m? 3,Y,4 i=i+1; 2,Y,6 H j=j+1; alse state The false path problem arises very often in practice. With this problem, the scheduling algorithm blows up, or produces huge schedules...
22 Our previous approach for the false path problem 1. Manually change the input program to eliminate the false paths: [rrigoni et. al, 2002] 1 2 X Y one Loop 4 5 1,4 2,X,4 2,5 3 H 6 1,,5 3,Y,L,5 3,Y,6 2,Y,6 H ffective if specified correctly. The additional burden to the user may not be practical.
23 Our previous approach for the false path problem 2. ompute sets of values of variables at each state: [ousot, 1976] j<m? 1,6 1,4 N=read(IN); write(x,n); i=0; 2,X,4 M=read(X); j=0; 0 i, 0 j 2,5 i<n? i = j, M = N 1,5 3,Y,5 3,Y,6 j<m? 3,Y,4 i=i+1; 2,Y,6 H j=j+1; 0 i < N 0 i < N, i N The convex hull computation at {2,5 j 1 1 i Restrictions on arithmetic operations to be handled. Restrictions on the problem sizes.
24 Outline The problem and an approach Petri Net: a model for capturing the behavior of a program efinition of a schedule n algorithm n application to MP2 decoder The effectiveness The outstanding problem: alse Path Problem pproaches for the alse Path Problem onventional approaches ong s observation uture directions
25 ong s observation certain pattern exists beyond the false states in the reachability tree: The pattern is observed in typical dataflow applications we have in practice. The pattern makes a scheduler fail to find a (finite) schedule. The pattern is caused by a structural property of the input Petri net X Y H ,6. 1,4 2,X,4 2,5 1,5 3,Y,5 3,Y,6 2,Y,6 H 3,Y,4.
26 ong s observation 1, Y Z H ,Z,4 2,Y,4 2,5 3,5 2,Y,5 3,6 2,Z,6 2,Y,Z,4 H.
27 ong s observation Transition dependency transition s requires a transition t, s t, if for any T-invariant of the Petri net, if it contains s, then it also contains t. T-invariant: a solution of the marking equations. I.e., a set of instances of transitions such that if all and only the instances of the set are fired, the resulting marking is same as before Y Z H T-invariants (minimal): {,,,, {,, H S1={, and S2={, are recurrent: and and Recurrent S es Two distinct S es, S1 and S2, are recurrent if there exist distinct elements {si, sj S1 and {tk, tl S2, such that si tk and tl sj.
28 ong s observation Proposition No schedule of a given Petri net contains recurrent S es. Proof: What to show: any attempt to include one of recurrent S es in a schedule leads to either a deadlock or infinite paths. Say S1 and S2 are recurrent, with {si, sj S1 and {tk, tl S2 and si tk and tl sj. schedule needs to include all resolutions of an S contained in it. ny instance of S1 in the reachability tree has a path such that the path starts with si, and tk and sj do not appear in the path, and the path ends with a deadlock, or else is infinite (no repeated marking in the path). Had a schedule contained S1, there is its instance for which the path above does not have any marking repeated in the pre-history of the path in the schedule.
29 ong s observation 1, Y Z H ,Z,4 2,Y,4 2,5 3,5 2,Y,5 3,6 2,Z,6 2,Y,Z,4 H S1={, and S2={, are recurrent: 1. and 2. and.
30 ong s observation: summary Recurrent S es lead the schedule search to either deadlock or endless. The recurrence between S es is a structural property of a Petri net. The proposition holds regardless of markings. The property can be found with a structural analysis. irections of research with ong s observation: 1. pplication to the false path problem 2. pplication to the schedulability analysis 3. xtension of the notion of recurrent S es
31 irections of research with ong s observation 1. pplication to the false path problem X Y H j<m? alse state 1,6 1,4 N=read(IN); write(x,n); i=0; 2,X,4 M=read(X); j=0; 2,5 i<n? 1,5 3,Y,5 3,Y,6 j<m? 3,Y,4 i=i+1; 2,Y,6 H j=j+1; alse state..
32 oncluding remarks Static scheduling of concurrent programs finds attractive applications in practice. Petri nets with abstracted control flow seem to be a reasonable model, but the false path problem stands as a showstopper. Previous attempts directly looked at data-value analysis. ong s observation deals with structural properties of the Petri nets: strong proposition, independent of markings mechanism of a failure of a schedule search revealed While not directly applicable to the false path problem, it may lead to an effective way to address the problem.
33
34 irections of research with ong s observation 2. pplication to the schedulability problem Question: when does the other direction of ong s proposition hold? I.e. iven two distinct S es, suppose that no schedule contains either of them. re these S es recurrent then?
35 irections of research with ong s observation 3. xtension of the notion of recurrent S es H
36 irections of research with ong s observation 3. xtension of the notion of recurrent S es H S1={,, S2={I,J, S3={,, S4={L,M I L I J I L I K L J L M M J N M None of them is recurrent to each other.
A Schedulability-Preserving Transformation Scheme from Boolean- Controlled Dataflow Networks to Petri Nets
Schedulability-Preserving ransformation Scheme from oolean- ontrolled Dataflow Networks to Petri Nets ong Liu Edward. Lee University of alifornia at erkeley erkeley,, 94720, US {congliu,eal}@eecs. berkeley.edu
More informationEE 249 Discussion: Synthesis of Embedded Software using Free- Choice Petri Nets
EE 249 Discussion: Synthesis of Embedded Software using Free- Choice Petri Nets By :Marco Sgroi, Luciano Lavagno, Alberto Sangiovanni-Vincentelli Shanna-Shaye Forbes Software synthesis from a concurrent
More informationComputational Models for Concurrent Streaming Applications
2 Computational Models for Concurrent Streaming Applications The challenges of today Twan Basten Based on joint work with Marc Geilen, Sander Stuijk, and many others Department of Electrical Engineering
More informationThe Esterel Language. The Esterel Version. Basic Ideas of Esterel
The Synchronous Language Esterel OMS W4995-02 Prof. Stephen. Edwards Fall 2002 olumbia University epartment of omputer Science The Esterel Language eveloped by Gérard erry starting 1983 Originally for
More informationEmbedded Systems 7 BF - ES - 1 -
Embedded Systems 7-1 - Production system A modelbased realtime faultdiagnosis system for technical processes Ch. Steger, R. Weiss - 2 - Sprout Counter Flow Pipeline-Processor Based on a stream of data
More informationEE249 Discussion Petri Nets: Properties, Analysis and Applications - T. Murata. Chang-Ching Wu 10/9/2007
EE249 Discussion Petri Nets: Properties, Analysis and Applications - T. Murata Chang-Ching Wu 10/9/2007 What are Petri Nets A graphical & modeling tool. Describe systems that are concurrent, asynchronous,
More informationCoverability Graph and Fairness
Coverability Graph and Fairness prof.dr.ir. Wil van der Aalst www.vdaalst.com Recall reachability analysis or1 x r1 rg1 g1 go1 o1 r2 rg2 g2 go2 o2 or2 Petri net standard properties Boundedness Terminating
More informationA counter-example to the minimal coverability tree algorithm
A counter-example to the minimal coverability tree algorithm A. Finkel, G. Geeraerts, J.-F. Raskin and L. Van Begin Abstract In [1], an algorithm to compute a minimal coverability tree for Petri nets has
More informationSysteMoC. Verification and Refinement of Actor-Based Models of Computation
SysteMoC Verification and Refinement of Actor-Based Models of Computation Joachim Falk, Jens Gladigau, Christian Haubelt, Joachim Keinert, Martin Streubühr, and Jürgen Teich {falk, haubelt}@cs.fau.de Hardware-Software-Co-Design
More informationPetri Nets ee249 Fall 2000
Petri Nets ee249 Fall 2000 Marco Sgroi Most slides borrowed from Luciano Lavagno s lecture ee249 (1998) 1 Models Of Computation for reactive systems Main MOCs: Communicating Finite State Machines Dataflow
More informationA Simple Example. The Synchronous Language Esterel. A First Try: An FSM. The Esterel Version. The Esterel Version. The Esterel Version
The Synchronous Language Prof. Stephen. Edwards Simple Example The specification: The output O should occur when inputs and have both arrived. The R input should restart this behavior. First Try: n FSM
More information6.033: Fault Tolerance: Isolation Lecture 17 Katrina LaCurts,
6.033: Fault Tolerance: Isolation Lecture 17 Katrina LaCurts, lacurts@mit.edu 0. Introduction - Last time: Atomicity via logging. We're good with atomicity now. - Today: Isolation - The problem: We have
More informationEmbedded Systems 7. Models of computation for embedded systems
Embedded Systems 7 - - Models of computation for embedded systems Communication/ local computations Communicating finite state machines Data flow model Computational graphs Von Neumann model Discrete event
More informationBy: Chaitanya Settaluri Devendra Kalia
By: Chaitanya Settaluri Devendra Kalia What is an embedded system? An embedded system Uses a controller to perform some function Is not perceived as a computer Software is used for features and flexibility
More informationInteraction Testing! Chapter 15!!
Interaction Testing Chapter 15 Interaction faults and failures Subtle Difficult to detect with testing Usually seen after systems have been delivered In low probability threads Occur after a long time
More informationOutline. Petri nets. Introduction Examples Properties Analysis techniques. 1 EE249Fall04
Outline Petri nets Introduction Examples Properties Analysis techniques 1 Petri Nets (PNs) Model introduced by C.A. Petri in 1962 Ph.D. Thesis: Communication with Automata Applications: distributed computing,
More informationPetri Nets ~------~ R-ES-O---N-A-N-C-E-I--se-p-te-m--be-r Applications.
Petri Nets 2. Applications Y Narahari Y Narahari is currently an Associate Professor of Computer Science and Automation at the Indian Institute of Science, Bangalore. His research interests are broadly
More informationDr. D. M. Akbar Hussain DE5 Department of Electronic Systems
Concurrency 1 Concurrency Execution of multiple processes. Multi-programming: Management of multiple processes within a uni- processor system, every system has this support, whether big, small or complex.
More informationMemory Management. Before We Begin. Process s Memory Address Space. Process Memory. CSE 120: Principles of Operating Systems.
SE 12: Principles of Operating Systems Lecture 7 Memory Management February 1, 26 Prof. Joe Pasquale Department of omputer Science and Engineering University of alifornia, San Diego Before We Begin Read
More informationEmbedded Systems 7. Petri net plan coordination for robocup teams G. Kontes and M.G. Lagoudakis BF - ES BF - ES - 2 -
Embedded Systems 7-1 - Petri net plan coordination for robocup teams G. Kontes and M.G. Lagoudakis - 2-1 Passing Maneuver Teamwork Design Based on Petri Net Plan P. F. Palamara, V. A. Ziparo, L. Iocchi,
More informationPetri Nets. Petri Nets. Petri Net Example. Systems are specified as a directed bipartite graph. The two kinds of nodes in the graph:
System Design&Methodologies Fö - 1 System Design&Methodologies Fö - 2 Petri Nets 1. Basic Petri Net Model 2. Properties and Analysis of Petri Nets 3. Extended Petri Net Models Petri Nets Systems are specified
More informationReliable Embedded Multimedia Systems?
2 Overview Reliable Embedded Multimedia Systems? Twan Basten Joint work with Marc Geilen, AmirHossein Ghamarian, Hamid Shojaei, Sander Stuijk, Bart Theelen, and others Embedded Multi-media Analysis of
More informationInteraction Testing. Chapter 15
Interaction Testing Chapter 15 Interaction faults and failures Subtle Difficult to detect with testing Usually seen after systems have been delivered In low probability threads Occur after a long time
More informationSynthesis of Complicated Asynchronous Control Circuits Using Template Based Technique
Synthesis of Complicated Asynchronous Control Circuits Using Template Based Technique Sufian Sudeng and Arthit Thongtak Abstract this paper proposes an approach for complicated asynchronous controller
More informationLecture 4: Synchronous Data Flow Graphs - HJ94 goal: Skiing down a mountain
Lecture 4: Synchronous ata Flow Graphs - I. Verbauwhede, 05-06 K.U.Leuven HJ94 goal: Skiing down a mountain SPW, Matlab, C pipelining, unrolling Specification Algorithm Transformations loop merging, compaction
More informationA Geometric Approach to the Bisection Method
Geometric pproach to the isection Method laudio Gutierrez 1, Flavio Gutierrez 2, and Maria-ecilia Rivara 1 1 epartment of omputer Science, Universidad de hile lanco Encalada 2120, Santiago, hile {cgutierr,mcrivara}@dcc.uchile.cl
More informationImplementation of Process Networks in Java
Implementation of Process Networks in Java Richard S, Stevens 1, Marlene Wan, Peggy Laramie, Thomas M. Parks, Edward A. Lee DRAFT: 10 July 1997 Abstract A process network, as described by G. Kahn, is a
More informationOutline. G Honors Operating Systems. Deadlock Avoidance. Review: Deadlock Prevention. Lecture 11: Deadlocks Avoidance, Detection, and Recovery
Outline G22.3250 Honors Operating Systems Lecture 11: Deadlocks Avoidance, Detection, and Recovery Process deadlocks (contd.) deadlock avoidance deadlock detection deadlock recovery combined approach to
More informationPetri Nets. Robert A. McGuigan, Department of Mathematics, Westfield State
24 Petri Nets Author: College. Robert A. McGuigan, Department of Mathematics, Westfield State Prerequisites: The prerequisites for this chapter are graphs and digraphs. See Sections 9.1, 9.2, and 10.1
More informationCompiler Construction 2010/2011 Loop Optimizations
Compiler Construction 2010/2011 Loop Optimizations Peter Thiemann January 25, 2011 Outline 1 Loop Optimizations 2 Dominators 3 Loop-Invariant Computations 4 Induction Variables 5 Array-Bounds Checks 6
More informationEvinrude. How to build a Petri Net-Based IDS from Program Sources. MeFoSyLoMa Meeting
MeFoSyLoMa Meeting Jean-Baptiste Voron - LIP6 (UPMC) Fabrice Kordon - LIP6 (UPMC) Liviu Iftode - DiscoLab (Rutgers University) Evinrude How to build a Petri Net-Based IDS from Program Sources December
More informationDiagnostic Information for Control-Flow Analysis of Workflow Graphs (aka Free-Choice Workflow Nets)
Diagnostic Information for Control-Flow Analysis of Workflow Graphs (aka Free-Choice Workflow Nets) Cédric Favre(1,2), Hagen Völzer(1), Peter Müller(2) (1) IBM Research - Zurich (2) ETH Zurich 1 Outline
More informationAlgorithms. Definition: An algorithm is a set of rules followed to solve a problem. In general, an algorithm has the steps:
Matchings 7.2 99 lgorithms efinition: n algorithm is a set of rules followed to solve a problem. In general, an algorithm has the steps: 1 Organize the input. 2 Repeatedly apply some steps until a termination
More informationfakultät für informatik informatik 12 technische universität dortmund Data flow models Peter Marwedel TU Dortmund, Informatik /10/08
12 Data flow models Peter Marwedel TU Dortmund, Informatik 12 2009/10/08 Graphics: Alexandra Nolte, Gesine Marwedel, 2003 Models of computation considered in this course Communication/ local computations
More informationNew Optimal Layer Assignment for Bus-Oriented Escape Routing
New Optimal Layer ssignment for us-oriented scape Routing in-tai Yan epartment of omputer Science and nformation ngineering, hung-ua University, sinchu, Taiwan, R. O.. STRT n this paper, based on the optimal
More informationLabVIEW Based Embedded Design [First Report]
LabVIEW Based Embedded Design [First Report] Sadia Malik Ram Rajagopal Department of Electrical and Computer Engineering University of Texas at Austin Austin, TX 78712 malik@ece.utexas.edu ram.rajagopal@ni.com
More informationEmbedded Systems 8. Identifying, modeling and documenting how data moves around an information system. Dataflow modeling examines
Embedded Systems 8 - - Dataflow modeling Identifying, modeling and documenting how data moves around an information system. Dataflow modeling examines processes (activities that transform data from one
More informationCompiler Construction 2016/2017 Loop Optimizations
Compiler Construction 2016/2017 Loop Optimizations Peter Thiemann January 16, 2017 Outline 1 Loops 2 Dominators 3 Loop-Invariant Computations 4 Induction Variables 5 Array-Bounds Checks 6 Loop Unrolling
More informationSystem Correctness. EEC 421/521: Software Engineering. System Correctness. The Problem at Hand. A system is correct when it meets its requirements
System Correctness EEC 421/521: Software Engineering A Whirlwind Intro to Software Model Checking A system is correct when it meets its requirements a design without requirements cannot be right or wrong,
More informationUnit 2: High-Level Synthesis
Course contents Unit 2: High-Level Synthesis Hardware modeling Data flow Scheduling/allocation/assignment Reading Chapter 11 Unit 2 1 High-Level Synthesis (HLS) Hardware-description language (HDL) synthesis
More informationCA441 BPM - Modelling Workflow with Petri Nets. Modelling Workflow with Petri Nets. Workflow Management Issues. Workflow. Process.
Modelling Workflow with Petri Nets 1 Workflow Management Issues Georgakopoulos,Hornick, Sheth Process Workflow specification Workflow Implementation =workflow application Business Process Modelling/ Workflow
More informationCS606- compiler instruction Solved MCQS From Midterm Papers
CS606- compiler instruction Solved MCQS From Midterm Papers March 06,2014 MC100401285 Moaaz.pk@gmail.com Mc100401285@gmail.com PSMD01 Final Term MCQ s and Quizzes CS606- compiler instruction If X is a
More informationLesson 5: Deadlocks Memory management (Part 1)
Lesson 5: Deadlocks Memory management (Part 1) ontents he oncept of Deadlock esource-llocation Graph pproaches to Handling Deadlocks Deadlock voidance Deadlock Detection ecovery from Deadlock =====================
More informationIntroduction to Machine-Independent Optimizations - 1
Introduction to Machine-Independent Optimizations - 1 Department of Computer Science and Automation Indian Institute of Science Bangalore 560 012 NPTEL Course on Principles of Compiler Design Outline of
More informationReliable Dynamic Embedded Data Processing Systems
2 Embedded Data Processing Systems Reliable Dynamic Embedded Data Processing Systems sony Twan Basten thales Joint work with Marc Geilen, AmirHossein Ghamarian, Hamid Shojaei, Sander Stuijk, Bart Theelen,
More informationThroughput-optimizing Compilation of Dataflow Applications for Multi-Cores using Quasi-Static Scheduling
Throughput-optimizing Compilation of Dataflow Applications for Multi-Cores using Quasi-Static Scheduling Tobias Schwarzer 1, Joachim Falk 1, Michael Glaß 1, Jürgen Teich 1, Christian Zebelein 2, Christian
More informationPicture of memory. Word FFFFFFFD FFFFFFFE FFFFFFFF
Memory Sequential circuits all depend upon the presence of memory A flip-flop can store one bit of information A register can store a single word, typically 32-64 bits Memory allows us to store even larger
More informationThe Spin Model Checker : Part I/II
The Spin Model Checker : Part I/II Moonzoo Kim CS Dept. KAIST Korea Advanced Institute of Science and Technology Motivation: Tragic Accidents Caused by SW Bugs 2 Cost of Software Errors June 2002 Software
More informationThirty one Problems in the Semantics of UML 1.3 Dynamics
Thirty one Problems in the Semantics of UML 1.3 Dynamics G. Reggio R.J. Wieringa September 14, 1999 1 Introduction In this discussion paper we list a number of problems we found with the current dynamic
More informationThe Language for Specifying Lexical Analyzer
The Language for Specifying Lexical Analyzer We shall now study how to build a lexical analyzer from a specification of tokens in the form of a list of regular expressions The discussion centers around
More informationCoVaC: Compiler Verification by Program Analysis of the Cross-Product. Anna Zaks, Amir Pnueli. May 28, FM 08, Turku, Finland
CoVaC: Compiler Verification by Program Analysis of the Cross-Product Anna Zaks, Amir Pnueli May 28, 28 FM 8, Turku, Finland Translation Validation source Optimization Pass target Validation Pass proof
More informationWell-behaved Dataflow Graphs
Well-behaved Dataflow Graphs Arvind Computer Science & Artificial Intelligence Lab Massachusetts Institute of echnology L21-1 Outline Kahnian networks and dataflow Streams with holes & agged interpretation
More informationAlgorithms and Data Structures
Lesson 4: Sets, Dictionaries and Hash Tables Luciano Bononi http://www.cs.unibo.it/~bononi/ (slide credits: these slides are a revised version of slides created by Dr. Gabriele D Angelo)
More informationEECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization
EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Dataflow Lecture: SDF, Kahn Process Networks Stavros Tripakis University of California, Berkeley Stavros Tripakis: EECS
More informationFSMs & message passing: SDL
12 FSMs & message passing: SDL Peter Marwedel TU Dortmund, Informatik 12 Springer, 2010 2012 年 10 月 30 日 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. Models of computation
More informationSystemic Solutions to Deadlock in FMS
Systemic Solutions to Deadlock in FMS Xu gang, Wu zhi Ming Abstract In order to solve deadlock in FMS, an integrated design method for FMS is presented. This method is based on deadlock free scheduling,
More informationDiscrete Optimization. Lecture Notes 2
Discrete Optimization. Lecture Notes 2 Disjunctive Constraints Defining variables and formulating linear constraints can be straightforward or more sophisticated, depending on the problem structure. The
More informationWEEK 5 - APPLICATION OF PETRI NETS. 4.4 Producers-consumers problem with priority
4.4 Producers-consumers problem with priority The net shown in Fig. 27 represents a producers-consumers system with priority, i.e., consumer A has priority over consumer B in the sense that A can consume
More informationStrand Algebras for DNA Computing
Strand Algebras for DNA omputing Microsoft Research DNA 15 onference Fayetteville, 2009-06-10 http://lucacardelli.name How Process Algebra fits in DNA omputing Electronics has electrons o All electrons
More informationCSE 332: Data Structures & Parallelism Lecture 22: Minimum Spanning Trees. Ruth Anderson Winter 2018
SE 33: Data Structures & Parallelism Lecture : Minimum Spanning Trees Ruth nderson Winter 08 Minimum Spanning Trees iven an undirected graph =(V,E), find a graph =(V, E ) such that: E is a subset of E
More informationESE532: System-on-a-Chip Architecture. Today. Process. Message FIFO. Thread. Dataflow Process Model Motivation Issues Abstraction Recommended Approach
ESE53: System-on-a-Chip Architecture Day 5: January 30, 07 Dataflow Process Model Today Dataflow Process Model Motivation Issues Abstraction Recommended Approach Message Parallelism can be natural Discipline
More informationCover Page. The handle holds various files of this Leiden University dissertation
Cover Page The handle http://hdl.handle.net/1887/22891 holds various files of this Leiden University dissertation Author: Gouw, Stijn de Title: Combining monitoring with run-time assertion checking Issue
More informationUnderstanding Parallelism and the Limitations of Parallel Computing
Understanding Parallelism and the Limitations of Parallel omputing Understanding Parallelism: Sequential work After 16 time steps: 4 cars Scalability Laws 2 Understanding Parallelism: Parallel work After
More informationTreewidth and graph minors
Treewidth and graph minors Lectures 9 and 10, December 29, 2011, January 5, 2012 We shall touch upon the theory of Graph Minors by Robertson and Seymour. This theory gives a very general condition under
More informationAlgorithms and Data Structures, or
Algorithms and Data Structures, or... Classical Algorithms of the 50s, 60s and 70s Mary Cryan A&DS Lecture 1 1 Mary Cryan Our focus Emphasis is Algorithms ( Data Structures less important). Most of the
More informationDiscrete-event simulation of railway systems with hybrid models
Discrete-event simulation of railway systems with hybrid models G. Decknatel & E. Schnieder Imtitutfur Regelungs- undautomatisierungstechnik, Technische Universitat Braunschweig, Braunschweig, Germany.
More informationPipelining, Branch Prediction, Trends
Pipelining, Branch Prediction, Trends 10.1-10.4 Topics 10.1 Quantitative Analyses of Program Execution 10.2 From CISC to RISC 10.3 Pipelining the Datapath Branch Prediction, Delay Slots 10.4 Overlapping
More informationCardinality of Sets MAT231. Fall Transition to Higher Mathematics. MAT231 (Transition to Higher Math) Cardinality of Sets Fall / 15
Cardinality of Sets MAT Transition to Higher Mathematics Fall 0 MAT (Transition to Higher Math) Cardinality of Sets Fall 0 / Outline Sets with Equal Cardinality Countable and Uncountable Sets MAT (Transition
More informationA Deterministic Concurrent Language for Embedded Systems
A Deterministic Concurrent Language for Embedded Systems Stephen A. Edwards Columbia University Joint work with Olivier Tardieu SHIM:A Deterministic Concurrent Language for Embedded Systems p. 1/38 Definition
More informationThe SPIN Model Checker
The SPIN Model Checker Metodi di Verifica del Software Andrea Corradini Lezione 1 2013 Slides liberamente adattate da Logic Model Checking, per gentile concessione di Gerard J. Holzmann http://spinroot.com/spin/doc/course/
More informationLecture 5 - Axiomatic semantics
Program Verification March 2014 Lecture 5 - Axiomatic semantics Lecturer: Noam Rinetzky Scribes by: Nir Hemed 1.1 Axiomatic semantics The development of the theory is contributed to Robert Floyd, C.A.R
More informationEE213A - EE298-2 Lecture 8
EE3A - EE98- Lecture 8 Synchronous ata Flow Ingrid Verbauwhede epartment of Electrical Engineering University of California Los Angeles ingrid@ee.ucla.edu EE3A, Spring 000, Ingrid Verbauwhede, UCLA - Lecture
More informationIntroduction to Electronic Design Automation. Model of Computation. Model of Computation. Model of Computation
Introduction to Electronic Design Automation Model of Computation Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Spring 03 Model of Computation In system design,
More informationJoint Entity Resolution
Joint Entity Resolution Steven Euijong Whang, Hector Garcia-Molina Computer Science Department, Stanford University 353 Serra Mall, Stanford, CA 94305, USA {swhang, hector}@cs.stanford.edu No Institute
More informationLecture 13: Memory Consistency. + a Course-So-Far Review. Parallel Computer Architecture and Programming CMU , Spring 2013
Lecture 13: Memory Consistency + a Course-So-Far Review Parallel Computer Architecture and Programming Today: what you should know Understand the motivation for relaxed consistency models Understand the
More informationAlgorithms and Data Structures. Algorithms and Data Structures. Algorithms and Data Structures. Algorithms and Data Structures
Richard Mayr Slides adapted from Mary Cryan (2015/16) with some changes. School of Informatics University of Edinburgh ADS (2018/19) Lecture 1 slide 1 ADS (2018/19) Lecture 1 slide 3 ADS (2018/19) Lecture
More informationRetiming. Adapted from: Synthesis and Optimization of Digital Circuits, G. De Micheli Stanford. Outline. Structural optimization methods. Retiming.
Retiming Adapted from: Synthesis and Optimization of Digital Circuits, G. De Micheli Stanford Outline Structural optimization methods. Retiming. Modeling. Retiming for minimum delay. Retiming for minimum
More informationA Deterministic Concurrent Language for Embedded Systems
A Deterministic Concurrent Language for Embedded Systems Stephen A. Edwards Columbia University Joint work with Olivier Tardieu SHIM:A Deterministic Concurrent Language for Embedded Systems p. 1/30 Definition
More informationHoare Logic. COMP2600 Formal Methods for Software Engineering. Rajeev Goré
Hoare Logic COMP2600 Formal Methods for Software Engineering Rajeev Goré Australian National University Semester 2, 2016 (Slides courtesy of Ranald Clouston) COMP 2600 Hoare Logic 1 Australian Capital
More informationDecision Making -Branching. Class Incharge: S. Sasirekha
Decision Making -Branching Class Incharge: S. Sasirekha Branching The C language programs presented until now follows a sequential form of execution of statements. Many times it is required to alter the
More informationBasic Graph Theory with Applications to Economics
Basic Graph Theory with Applications to Economics Debasis Mishra February, 0 What is a Graph? Let N = {,..., n} be a finite set. Let E be a collection of ordered or unordered pairs of distinct elements
More information3 INSTRUCTION FLOW. Overview. Figure 3-0. Table 3-0. Listing 3-0.
3 INSTRUCTION FLOW Figure 3-0. Table 3-0. Listing 3-0. Overview The TigerSHARC is a pipelined RISC-like machine, where ructions are read from memory o the ruction alignment buffer in quad words. Instruction
More informationDeterministic Concurrency
Candidacy Exam p. 1/35 Deterministic Concurrency Candidacy Exam Nalini Vasudevan Columbia University Motivation Candidacy Exam p. 2/35 Candidacy Exam p. 3/35 Why Parallelism? Past Vs. Future Power wall:
More informationCHAPTER 8. Copyright Cengage Learning. All rights reserved.
CHAPTER 8 RELATIONS Copyright Cengage Learning. All rights reserved. SECTION 8.3 Equivalence Relations Copyright Cengage Learning. All rights reserved. The Relation Induced by a Partition 3 The Relation
More informationMODERN automated manufacturing systems require. An Extended Event Graph With Negative Places and Tokens for Time Window Constraints
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 2, NO. 4, OCTOBER 2005 319 An Extended Event Graph With Negative Places and Tokens for Time Window Constraints Tae-Eog Lee and Seong-Ho Park
More information1 The comparison of QC, SC and LIN
Com S 611 Spring Semester 2009 Algorithms for Multiprocessor Synchronization Lecture 5: Tuesday, 3rd February 2009 Instructor: Soma Chaudhuri Scribe: Jianrong Dong 1 The comparison of QC, SC and LIN Pi
More informationDataflow Architectures. Karin Strauss
Dataflow Architectures Karin Strauss Introduction Dataflow machines: programmable computers with hardware optimized for fine grain data-driven parallel computation fine grain: at the instruction granularity
More informationFormal Verification for UML/SysML models
Formal Verification for UML/SysML models IBM Research Lab - Haifa Content Formal verification v.s. testing Correctness properties Formal verification for Rhapsody models 2 Formal Verification Desired Properties
More informationSDL. Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 年 10 月 18 日. technische universität dortmund
12 SDL Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 2017 年 10 月 18 日 Springer, 2010 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. Models
More information1. Memory technology & Hierarchy
1. Memory technology & Hierarchy Back to caching... Advances in Computer Architecture Andy D. Pimentel Caches in a multi-processor context Dealing with concurrent updates Multiprocessor architecture In
More informationAlgorithmic Verification. Algorithmic Verification. Model checking. Algorithmic verification. The software crisis (and hardware as well)
Algorithmic Verification The software crisis (and hardware as well) Algorithmic Verification Comp4151 Lecture 1-B Ansgar Fehnker Computer become more powerful (Moore s law) The quality of programs cannot
More informationDownloaded from Page 1. LR Parsing
Downloaded from http://himadri.cmsdu.org Page 1 LR Parsing We first understand Context Free Grammars. Consider the input string: x+2*y When scanned by a scanner, it produces the following stream of tokens:
More informationPotential violations of Serializability: Example 1
CSCE 6610:Advanced Computer Architecture Review New Amdahl s law A possible idea for a term project Explore my idea about changing frequency based on serial fraction to maintain fixed energy or keep same
More informationInst: Chris Davison
ICS 153 Introduction to Computer Networks Inst: Chris Davison cbdaviso@uci.edu ICS 153 Data Link Layer Contents Simplex and Duplex Communication Frame Creation Flow Control Error Control Performance of
More informationRelaxed Memory-Consistency Models
Relaxed Memory-Consistency Models Review. Why are relaxed memory-consistency models needed? How do relaxed MC models require programs to be changed? The safety net between operations whose order needs
More informationCache Coherence in Scalable Machines
ache oherence in Scalable Machines SE 661 arallel and Vector Architectures rof. Muhamed Mudawar omputer Engineering Department King Fahd University of etroleum and Minerals Generic Scalable Multiprocessor
More informationDynamic Maintenance of Majority Information in Constant Time per Update
RIS RS-95-45 Frandsen & Skyum: ynamic Maintenance of Majority Information RIS asic Research in omputer Science ynamic Maintenance of Majority Information in onstant Time per pdate Gudmund Skovbjerg Frandsen
More informationthe complexity of predicting atomicity violations
the complexity of predicting atomicity violations Azadeh Farzan Univ of Toronto P. Madhusudan Univ of Illinois at Urbana Champaign. Motivation: Interleaving explosion problem Testing is the main technique
More informationDistributed Real-Time and Embedded Systems
Context Deadlock voidance for Goal: Formalization of Middleware Services Distributed Real-Time and Embedded Systems pplication H e n n y S i p m a S t a n f o r d U n i v e r s i t y C e s a r V e n k
More informationAnalysis of Algorithms Prof. Karen Daniels
UMass Lowell omputer Science 91.404 nalysis of lgorithms Prof. Karen aniels Spring, 2013 hapter 22: raph lgorithms & rief Introduction to Shortest Paths [Source: ormen et al. textbook except where noted]
More information