This thesis presents an analytical model of the behavior of dataflow graphs with data-dependent control flow. In this model, the number of tokens produced or consumed by each actor is given as a symbolic function of the Boolean-valued tokens in the system. Several definitions of consistency are discussed and compared. Necessary and sufficient conditions for bounded-length schedules, as well as sufficient conditions for determining whether a dataflow graph can be scheduled in bounded memory are given. These are obtained by analyzing the properties of minimal cyclic schedules, defined as minimal sequences of actor executions that return the dataflow graph to its original state. Additional analysis techniques, including a clustering algorithm that reduces graphs to standard control structures (such as "if-then-else" and "do-while") and a state enumeration procedure, are also described. Relationships between these techniques and those used in Petri net analysis, as well as in the theory of certain stream languages, are discussed.Finally, an implementation of these techniques using Ptolemy, an object-oriented simulation and software prototyping platform, is described. Given a dynamic dataflow graph, the implementation is capable either of simulating the execution of the graph, or generating efficient code for it (in an assembly language or higher level language).
Cited By
- Guo L, Chi Y, Lau J, Song L, Tian X, Khatti M, Qiao W, Wang J, Ustun E, Fang Z, Zhang Z and Cong J (2023). TAPA: A Scalable Task-parallel Dataflow Programming Framework for Modern FPGAs with Co-optimization of HLS and Physical Design, ACM Transactions on Reconfigurable Technology and Systems, 16:4, (1-31), Online publication date: 31-Dec-2024.
- Schneider K and Bhagyanath A (2023). Consistency Constraints for Mapping Dataflow Graphs to Hybrid Dataflow/von Neumann Architectures, ACM Transactions on Embedded Computing Systems, 22:5, (1-25), Online publication date: 30-Sep-2023.
- Rubattu C, Palumbo F, Bhattacharyya S and Pelcat M (2022). PathTracer: Understanding Response Time of Signal Processing Applications on Heterogeneous MPSoCs, ACM Transactions on Modeling and Performance Evaluation of Computing Systems, 6:4, (1-30), Online publication date: 31-Dec-2022.
- Stoutchinin A and Benini L (2019). StreamDrive, Journal of Signal Processing Systems, 91:3-4, (275-301), Online publication date: 1-Mar-2019.
- Skelin M and Geilen M (2018). Compositionality in scenario-aware dataflow: a rendezvous perspective, ACM SIGPLAN Notices, 53:6, (55-64), Online publication date: 7-Dec-2018.
- Skelin M and Geilen M It's a matter of time Proceedings of the 16th ACM-IEEE International Conference on Formal Methods and Models for System Design, (11-21)
- Skelin M and Geilen M Compositionality in scenario-aware dataflow: a rendezvous perspective Proceedings of the 19th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems, (55-64)
- Bouakaz A, Fradet P and Girault A (2017). A Survey of Parametric Dataflow Models of Computation, ACM Transactions on Design Automation of Electronic Systems, 22:2, (1-25), Online publication date: 15-Mar-2017.
- Millo J, Kofman E and Simone R (2015). Modeling and Analyzing Dataflow Applications on NoC-Based Many-Core Architectures, ACM Transactions on Embedded Computing Systems, 14:3, (1-25), Online publication date: 21-May-2015.
- Li P, Beard J and Buhler J Deadlock-free buffer configuration for stream computing Proceedings of the Sixth International Workshop on Programming Models and Applications for Multicores and Manycores, (164-169)
- Jung H, Lee C, Kang S, Kim S, Oh H and Ha S (2014). Dynamic Behavior Specification and Dynamic Mapping for Real-Time Embedded Systems, ACM Transactions on Embedded Computing Systems, 13:4s, (1-26), Online publication date: 1-Jul-2014.
- Bebelis V, Fradet P, Girault A and Lavigueur B BPDF Proceedings of the Eleventh ACM International Conference on Embedded Software, (1-10)
- Kiasari A, Jantsch A and Lu Z (2013). Mathematical formalisms for performance evaluation of networks-on-chip, ACM Computing Surveys, 45:3, (1-41), Online publication date: 1-Jun-2013.
- Falk J, Zebelein C, Haubelt C and Teich J (2013). A rule-based quasi-static scheduling approach for static islands in dynamic dataflow graphs, ACM Transactions on Embedded Computing Systems, 12:3, (1-31), Online publication date: 10-Mar-2013.
- Lele A, Moreira O and Cuijpers P A new data flow analysis model for TDM Proceedings of the tenth ACM international conference on Embedded software, (237-246)
- Zimmermann J, Bringmann O and Rosenstiel W Analysis of multi-domain scenarios for optimized dynamic power management strategies Proceedings of the Conference on Design, Automation and Test in Europe, (862-865)
- Nita I, Costachioiu T and Lazarescu V Speed-Up of gis processing using multicore architectures Proceedings of the 2011 international conference on Computational science and its applications - Volume Part II, (293-302)
- Zhai J, Nikolov H and Stefanov T Modeling adaptive streaming applications with parameterized polyhedral process networks Proceedings of the 48th Design Automation Conference, (116-121)
- Hsu C, Pino J and Bhattacharyya S (2011). Multithreaded Simulation for Synchronous Dataflow Graphs, ACM Transactions on Design Automation of Electronic Systems, 16:3, (1-23), Online publication date: 1-Jun-2011.
- Falk J, Zebelein C, Keinert J, Haubelt C, Teich J and Bhattacharyya S (2011). Analysis of SystemC actor networks for efficient synthesis, ACM Transactions on Embedded Computing Systems, 10:2, (1-34), Online publication date: 1-Dec-2010.
- Wiggers M, Bekooij M and Smit G (2011). Buffer capacity computation for throughput-constrained modal task graphs, ACM Transactions on Embedded Computing Systems, 10:2, (1-59), Online publication date: 1-Dec-2010.
- Geilen M (2011). Synchronous dataflow scenarios, ACM Transactions on Embedded Computing Systems, 10:2, (1-31), Online publication date: 1-Dec-2010.
- Geilen M and Stuijk S Worst-case performance analysis of synchronous dataflow scenarios Proceedings of the eighth IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis, (125-134)
- Mandel L, Plateau F and Pouzet M Lucy-n Proceedings of the 10th international conference on Mathematics of program construction, (288-309)
- Hsu C, Pino J and Hu F A mixed-mode vector-based dataflow approach for modeling and simulating LTE physical layer Proceedings of the 47th Design Automation Conference, (18-23)
- Li P, Agrawal K, Buhler J and Chamberlain R Deadlock avoidance for streaming computations with filtering Proceedings of the twenty-second annual ACM symposium on Parallelism in algorithms and architectures, (243-252)
- Carpenter P, Ramirez A and Ayguadé E Buffer sizing for self-timed stream programs on heterogeneous distributed memory multiprocessors Proceedings of the 5th international conference on High Performance Embedded Architectures and Compilers, (96-110)
- Falk J, Keinert J, Haubelt C, Teich J and Bhattacharyya S A generalized static data flow clustering algorithm for mpsoc scheduling of multimedia applications Proceedings of the 8th ACM international conference on Embedded software, (189-198)
- Plishker W, Sane N, Kiemb M and Bhattacharyya S Heterogeneous Design in Functional DIF Proceedings of the 8th international workshop on Embedded Computer Systems: Architectures, Modeling, and Simulation, (157-166)
- Hsu C, Pino J and Bhattacharyya S Multithreaded simulation for synchronous dataflow graphs Proceedings of the 45th annual Design Automation Conference, (331-336)
- Zhou Y and Lee E (2008). Causality interfaces for actor networks, ACM Transactions on Embedded Computing Systems, 7:3, (1-35), Online publication date: 1-Apr-2008.
- Saha S, Schlessman J, Puthenpurayil S, Bhattacharyya S and Wolf W An optimized message passing framework for parallel implementation of signal processing applications Proceedings of the conference on Design, automation and test in Europe, (1220-1225)
- Wiggers M, Bekooij M and Smit G Computation of buffer capacities for throughput constrained and data dependent inter-task communication Proceedings of the conference on Design, automation and test in Europe, (640-645)
- Hsu C, Ko M, Bhattacharyya S, Ramasubbu S and Pino J (2008). Efficient simulation of critical synchronous dataflow graphs, ACM Transactions on Design Automation of Electronic Systems, 12:3, (1-28), Online publication date: 17-Aug-2007.
- Martin G, Bailey B and Piziali A (2007). ESL Design and Verification, 10.5555/2155698, Online publication date: 23-Feb-2007.
- Zhou Y and Lee E A causality interface for deadlock analysis in dataflow Proceedings of the 6th ACM & IEEE International conference on Embedded software, (44-52)
- Stuijk S, Geilen M and Basten T Exploring trade-offs in buffer requirements and throughput constraints for synchronous dataflow graphs Proceedings of the 43rd annual Design Automation Conference, (899-904)
- Hsu C, Ramasubbu S, Ko M, Pino J and Bhattacharyya S Efficient simulation of critical synchronous dataflow graphs Proceedings of the 43rd annual Design Automation Conference, (893-898)
- Johnston C, Bailey D and Lyons P Towards a visual notation for pipelining in a visual programming language for programming FPGAs Proceedings of the 7th ACM SIGCHI New Zealand chapter's international conference on Computer-human interaction: design centered HCI, (1-9)
- Ma H, Yen I, Zhou J and Cooper K (2006). QoS analysis for component-based embedded software, Journal of Systems and Software, 79:6, (859-870), Online publication date: 1-Jun-2006.
- Han S, Chae S and Jerraya A Functional modeling techniques for efficient SW code generation of video codec applications Proceedings of the 2006 Asia and South Pacific Design Automation Conference, (935-940)
- A scenario-aware data flow model for combined long-run average and worst-case performance analysis Proceedings of the Fourth ACM/IEEE International Conference on Formal Methods and Models for Co-Design, (185-194)
- Boucaron J, Millo J and De Simone R (2006). Another Glance at Relay Stations in Latency-Insensitive Design, Electronic Notes in Theoretical Computer Science (ENTCS), 146:2, (41-59), Online publication date: 1-Jan-2006.
- Edwards S and Tardieu O SHIM Proceedings of the 5th ACM international conference on Embedded software, (264-272)
- Liu C, Kondratyev A, Watanabe Y and Sangiovanni-Vincentelli A A structural approach to quasi-static schedulability analysis of communicating concurrent programs Proceedings of the 5th ACM international conference on Embedded software, (10-16)
- Geilen M, Basten T and Stuijk S Minimising buffer requirements of synchronous dataflow graphs with model checking Proceedings of the 42nd annual Design Automation Conference, (819-824)
- Stuijk S, Basten T, Mesman B and Geilen M Predictable Embedding of Large Data Structures in Multiprocessor Networks-on-Chip Proceedings of the conference on Design, Automation and Test in Europe - Volume 1, (254-255)
- Maydl W and Grunske L Behavioral types for embedded software Component-Based Software Development for Embedded Systems, (82-106)
- Cortadella J, Kondratyev A, Lavagno L, Taubin A and Watanabe Y (2004). Quasi-static Scheduling for Concurrent Architectures, Fundamenta Informaticae, 62:2, (171-196), Online publication date: 1-Apr-2004.
- Cortadella J, Kondratyev A, Lavagno L, Taubin A and Watanabe Y (2004). Quasi-static Scheduling for Concurrent Architectures, Fundamenta Informaticae, 62:2, (171-196), Online publication date: 1-Feb-2004.
- Hierarchical reconfiguration of dataflow models Proceedings of the Second ACM/IEEE International Conference on Formal Methods and Models for Co-Design, (179-188)
- Pimentel A and Erbas C An IDF-based trace transformation method for communication refinement Proceedings of the 40th annual Design Automation Conference, (402-407)
- Geilen M and Basten T Requirements on the execution of Kahn process networks Proceedings of the 12th European conference on Programming, (319-334)
- Oh H and Ha S (2002). Fractional rate dataflow model and efficient code synthesis for multimedia applications, ACM SIGPLAN Notices, 37:7, (12-17), Online publication date: 17-Jul-2002.
- Oh H and Ha S Fractional rate dataflow model and efficient code synthesis for multimedia applications Proceedings of the joint conference on Languages, compilers and tools for embedded systems: software and compilers for embedded systems, (12-17)
- Arrigoni G, Duchini L, Passerone C, Lavagno L and Watanabe Y False Path Elimination in Quasi-Static Scheduling Proceedings of the conference on Design, automation and test in Europe
- Markovskiy Y, Caspi E, Huang R, Yeh J, Chu M, Wawrzynek J and DeHon A Analysis of quasi-static scheduling techniques in a virtualized reconfigurable machine Proceedings of the 2002 ACM/SIGDA tenth international symposium on Field-programmable gate arrays, (196-205)
- Edwards S, Lavagno L, Lee E and Sangiovanni-Vincentelli A Design of embedded systems Readings in hardware/software co-design, (86-107)
- Cortadella J, Kondratyev A, Lavagno L, Massot M, Moral S, Passerone C, Watanabe Y and Sangiovanni-Vincentelli A Task generation and compile-time scheduling for mixed data-control embedded software Proceedings of the 37th Annual Design Automation Conference, (489-494)
- Sgroi M, Lavagno L, Watanabe Y and Sangiovanni-Vincentelli A Synthesis of embedded software using free-choice Petri nets Proceedings of the 36th annual ACM/IEEE Design Automation Conference, (805-810)
- Strehl K, Thiele L, Ziegenbein D, Ernst R and Teich J Scheduling hardware/software systems using symbolic techniques Proceedings of the seventh international workshop on Hardware/software codesign, (173-177)
- Stevens R The Processing Graph Method Tool (PGMT) Proceedings of the IEEE International Conference on Application-Specific Systems, Architectures and Processors
- Cardelli S, Chiodo M, Giusto P, Jurecska A, Lavagno L and Sangiovanni-Vincentelli A Rapid-Prototyping of Embedded Systems via Reprogrammable Devices Proceedings of the 7th IEEE International Workshop on Rapid System Prototyping (RSP '96)
- Buck J A dynamic dataflow model suitable for efficient mixed hardware and software implementations of DSP applications Proceedings of the 3rd international workshop on Hardware/software co-design, (165-172)
Recommendations
Scheduling dynamic dataflow graphs with bounded memory using the token flow model
ICASSP'93: Proceedings of the 1993 IEEE international conference on Acoustics, speech, and signal processing: plenary, special, audio, underwater acoustics, VLSI, neural networks - Volume IThis paper builds upon research by Lee [1] concerning the token flow model, an analytical model for the behavior of dataflow graphs with data-dependent control flow, by analyzing the properties of cycles of the schedule: sequences of actor executions ...
Token Graphs
For a graph G and integer k ≥ 1, we define the token graph F k (G) to be the graph with vertex set all k-subsets of V(G), where two vertices are adjacent in F k (G) whenever their symmetric difference is a pair of adjacent vertices in G. Thus vertices ...