5 th Biennial Ptolemy Miniconference Berkeley, CA, May 9, 2003 The Component Interaction Domain: Modeling Event-Driven and Demand- Driven Applications.

Slides:



Advertisements
Similar presentations
A Workflow Engine with Multi-Level Parallelism Supports Qifeng Huang and Yan Huang School of Computer Science Cardiff University
Advertisements

Extensible Kernels Edgar Velázquez-Armendáriz September 24 th 2009.
ECE 526 – Network Processing Systems Design Software-based Protocol Processing Chapter 7: D. E. Comer.
Process-Based Software Components for Networked Embedded Systems Edward A. Lee, PI UC Berkeley Core Technical Team (Mobies, SEC, and GSRC): Christopher.
Component Technologies for Embedded Systems Johan Eker.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 Causality Interfaces for Actor Networks Ye Zhou and Edward A. Lee University of California,
Type System, March 12, Data Types and Behavioral Types Yuhong Xiong Edward A. Lee Department of Electrical Engineering and Computer Sciences University.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley Behavioral Types for Actor-Oriented Design Edward A. Lee.
Behavioral Types as Interface Definitions for Concurrent Components Center for Hybrid and Embedded Software Systems Edward A. Lee Professor UC Berkeley.
TinyGALS: A Programming Model for Event-Driven Embedded Systems Elaine Cheong UC Berkeley Ptolemy Group / PARC Judy Liebman (LLNL) Jie Liu, Feng Zhao (PARC)
February 11, 2010 Center for Hybrid and Embedded Software Systems Ptolemy II - Heterogeneous Concurrent Modeling and Design.
5 th Biennial Ptolemy Miniconference Berkeley, CA, May 9, 2003 C AL - An actor language Jörn W. Janneck The Ptolemy Group University of California, Berkeley.
Ngu, Texas StatePtolemy Miniconference, February 13, 2007 Flexible Scientific Workflows Using Dynamic Embedding Anne H.H. Ngu, Nicholas Haasch Terence.
MD703 Class 8 DRAFT Agenda Midterm Return and Review –The Big Fix Discussion Application Integration –Workflow –EAI –Service Oriented Architecture Chapters.
Review of “Embedded Software” by E.A. Lee Katherine Barrow Vladimir Jakobac.
1 Xinke Lin Andreas Häber Veena Dodballapur Demystifying SOA and EDA.
CS 267 Spring 2008 Horst Simon UC Berkeley May 15, 2008 Code Generation Framework for Process Network Models onto Parallel Platforms Man-Kit Leung, Isaac.
AR vs. CFSM Abdallah Tabbara. CFSM Overview 4 CFSM has: –a finite state machine part –a data computation part –a locally synchronous behavior transitions.
An Extensible Type System for Component-Based Design
Chess Review November 21, 2005 Berkeley, CA Edited and presented by Causality Interfaces and Compositional Causality Analysis Rachel Zhou UC Berkeley.
Hierarchical Reconfiguration of Dataflow Graphs Stephen Neuendorffer UC Berkeley Poster Preview May 10, 2004.
Run-Time Models for Measurement & Control Systems and Their Support in Ptolemy II Jie Liu EECS, UC Berkeley 9/13/2000 Agilent Technologies.
SEC PI Meeting Annapolis, May 8-9, 2001 Component-Based Design of Embedded Control Systems Edward A. Lee & Jie Liu UC Berkeley with thanks to the entire.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley System-Level Types for Component-Based Design Edward A.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley Concurrent Component Patterns, Models of Computation, and.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 PTIDES: A Programming Model for Time- Synchronized Distributed Real-time Systems Yang.
Visual Debugging Tools for Concurrent Models of Computation Elaine Cheong 15 May 2002 EE290N: Advanced Topics in System Theory.
NSF Foundations of Hybrid and Embedded Software Systems UC Berkeley: Chess Vanderbilt University: ISIS University of Memphis: MSI Program Review May 10,
Panel: What Comes After C++ in System-Level Specification Edward Lee UC Berkeley Forum on Design Languages Workshop on System Specification & Design Languages.
5 th Biennial Ptolemy Miniconference Berkeley, CA, May 9, 2003 MESCAL Application Modeling and Mapping: Warpath Andrew Mihal and the MESCAL team UC Berkeley.
System-Level Types for Component-Based Design Paper by: Edward A. Lee and Yuhong Xiong Presentation by: Dan Patterson.
Router modeling using Ptolemy Xuanming Dong and Amit Mahajan May 15, 2002 EE290N.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley The Ptolemy II Framework for Visual Languages Xiaojun Liu.
A Load Balancing Framework for Adaptive and Asynchronous Applications Kevin Barker, Andrey Chernikov, Nikos Chrisochoides,Keshav Pingali ; IEEE TRANSACTIONS.
Siemens’ 4 View Model (props to My-An Nguyen for giving me her 344 notes on which this lecture is based)
SS ZG653Second Semester, Topic Architectural Patterns Pipe and Filter.
Event-Driven Architecture Team 4 – Idris Callins, Jestin Keaton, Bill Pegg, Steven Ng.
Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD
CH07: Writing the Programs Does not teach you how to program, but point out some software engineering practices that you should should keep in mind as.
Institut für Computertechnik ICT Institute of Computer Technology Interaction of SystemC AMS Extensions with TLM 2.0 Markus Damm, Christoph.
Software Architecture Classification for Estimating the Costs of COTS Integration Yakimovich, Bieman, Basili; icse 99.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour.
Composing Models of Computation in Kepler/Ptolemy II
1 CMPT 275 High Level Design Phase Architecture. Janice Regan, Objectives of Design  The design phase takes the results of the requirements analysis.
Eric Keller, Evan Green Princeton University PRESTO /22/08 Virtualizing the Data Plane Through Source Code Merging.
1 Multithreaded Architectures Lecture 3 of 4 Supercomputing ’93 Tutorial Friday, November 19, 1993 Portland, Oregon Rishiyur S. Nikhil Digital Equipment.
StreamX10: A Stream Programming Framework on X10 Haitao Wei School of Computer Science at Huazhong University of Sci&Tech.
Pipes & Filters Architecture Pattern Source: Pattern-Oriented Software Architecture, Vol. 1, Buschmann, et al.
Dream A Fractal-based communication framework ObjectWeb Architecture Meeting July, 8th 2004 M. Leclercq, V. Quéma, J.-B. Stefani Sardes.
1 CMPT 275 High Level Design Phase Modularization.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 system architecture 1 after designing to meet functional requirements, design the system.
CSC480 Software Engineering Lecture 10 September 25, 2002.
MROrder: Flexible Job Ordering Optimization for Online MapReduce Workloads School of Computer Engineering Nanyang Technological University 30 th Aug 2013.
OOMI Callbacks. Slide 2 of 11 © Ingeniørhøjskolen i Århus Outline Motivation –Using TTS as example CORBA Callbacks Issues & solutions Alternative solutions.
Actor Oriented Programming with CAL -designing embedded system components Johan Eker Department of Automatic Control, Lund University Chris Chang, Jörn.
January 26, 2016Department of Computer Sciences, UT Austin Characterization of Existing Systems Puneet Chopra Ramakrishna Kotla.
E81 CSE 532S: Advanced Multi-Paradigm Software Development Venkita Subramonian, Christopher Gill, Ying Huang, Marc Sentany Department of Computer Science.
Presented by: S.M.Tabatabaee Nasab SCOR spans: All customer interactions, from order entry through paid invoice All product (physical material.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
CS 5991 Presentation Ptolemy: A Framework For Simulating and Prototyping Heterogeneous Systems.
Copyright 2002 Stephen F. Bush1 Three Points to Remember Active Networks Are Cool Active Networks Are Cool Active Networks Can Be At Least As Secure As.
Management Information Systems Ozi Herlambang A
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
The OMG Approach (continued)
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
CSP-Style Rendezvous Communication Thomas Feng, Edward Lee, Yang Zhao
In Distributed Systems
Modeling Event-Based Systems in Ptolemy II EE249 Project Status Report
Presentation transcript:

5 th Biennial Ptolemy Miniconference Berkeley, CA, May 9, 2003 The Component Interaction Domain: Modeling Event-Driven and Demand- Driven Applications Xiaojun Liu Yang Zhao

Ptolemy Miniconference 2 Outline Interaction between Software Components Software Framework Examples –The CORBA Event Service –The Click Modular Router The Component Interaction (CI) Domain Demonstration Current Status and Future Work

Ptolemy Miniconference 3 Aspects of Component Interaction Making sense of the information exchanged –E.g. a pure event notification, or an array of floating-point numbers –Managed by the type system The communication protocol –E.g. rendezvous, or read from/write to a FIFO queue –Managed by a model of computation

Ptolemy Miniconference 4 Aspects of Component Interaction Initiation –Which participant initiates the interaction? –What components can initiate interaction? Control flow –How do interacting components obtain the execution context? Timing…

Ptolemy Miniconference 5 The CORBA Event Service Support asynchronous, decoupled communication between objects

Ptolemy Miniconference 6 The Push Model The supplier initiates the transfer of data The consumer reacts to supplied data The event channel provides the execution context for the consumer Event Channel Event Channel Supplier push() Consumer push()

Ptolemy Miniconference 7 The Pull Model The consumer initiates the transfer of data The supplier reacts to demand of data The event channel provides the execution context for the supplier Event Channel Event Channel Supplier pull() Consumer pull()

Ptolemy Miniconference 8 Push supplier and pull consumer –The event channel acts as an event queue Pull supplier and push consumer –The event channel must act as an active mediator for any interaction to take place Mixed Models Event Channe l Event Channe l Supplier push() Consumer pull() Event Channe l Event Channe l Supplier push() Consumer pull()

Ptolemy Miniconference 9 Complex Mixture Event Channe l Event Channe l Event Channe l Event Channe l Event Channe l Event Channe l Event Channe l Event Channe l Supplier Consumer Supplier/ Consumer Supplier/ Consumer Supplier/ Consumer Supplier/ Consumer push() pull() push() pull() push() pull()

Ptolemy Miniconference 10 The Click Modular Router Elements are C++ objects that interact by making method calls Packets are passed as method argument or return value Flexible, configurable, and highly efficient routers have been built with this software architecture E. Kohler et al., “The Click Modular Router,” ACM Transactions on Computer Systems, 18(3), August 2000, pages

Ptolemy Miniconference 11 The Component Interaction Domain Push/pull interaction Active/passive actors Multi-threaded execution

Ptolemy Miniconference 12 Push/Pull Interaction Push model –Event-driven applications Pull model –Demand-driven applications

Ptolemy Miniconference 13 Active Actors Active actors initiate all computation in the model –Source actors with push output –Sink actors with pull input –Actors with pull input and push output

Ptolemy Miniconference 14 Passive Actors Passive actors react to pushed event or pull demand

Ptolemy Miniconference 15 Multi-Threaded Execution Each active actor has its own execution thread Passive actors share the same execution thread as the director

Ptolemy Miniconference 16 A Router Model in the CI Domain

Ptolemy Miniconference 17 CI vs. the Click Router Architecture Click is a specialized, highly efficient, runtime software architecture based on object-oriented programming. Router elements interact by making method calls. The control flow is fixed once the router is built. The CI domain provides a more general model architecture based on actor-oriented programming. Actor interaction is mediated by the director, so is more decoupled. The director (or code generator) can partition a model and choose a different analysis/scheduling strategy for each part.

Ptolemy Miniconference 18 Current Status and Future Work Current status –A preliminary implementation is included in the current release Future work –Design the infrastructure for building actors with mixed push/pull input ports and output ports –Partitioning of CI models for scheduling and allocating execution threads –Explore the relation to dynamic dataflow that uses both data-driven and demand-driven execution strategies