220 likes | 361 Views
Distributed Execution of Ptolemy Models Yang Zhao (ellen_zh@eecs) Thomas H. Feng (tfeng@eecs) Class Project for EE290N. Demo. Overview. A framework to distributedly execute Ptolemy models (currently, PN models): DPN (Distributed PN) domain in Ptolemy
E N D
Distributed Execution of Ptolemy Models Yang Zhao (ellen_zh@eecs) Thomas H. Feng (tfeng@eecs) Class Project for EE290N
Overview A framework to distributedly execute Ptolemy models (currently, PN models): DPN (Distributed PN) domain in Ptolemy • Startup and communication between submodels • PN semantics (blocking read, blocking write) • Model deployment Communication framework based on CORBA • Dynamically lookup machines (Naming Service) • Ptolemy process startup on request (ptAgent) • Message relay (ptAgent)
Register (1) Naming Service ptAgent ptAgent ptAgent
Register (2) Naming Service ptAgent Register to Naming Service (ptAgent, Models) ptAgent ptAgent
Lookup (1) Naming Service ptAgent Look up to Naming Service (ptAgent, Models) ptAgent ptAgent
Lookup (2) Naming Service ptAgent after look up for ptAgent ptAgent ptAgent
Distributed Execution in Ptolemy • Two major ways: • Distribute a big model to a set of hosts and have them cooperate when executing to maintain the entire behavior. • Discover applications or models currently running in the system and join them: ex, distributed games, chat rooms.
Configuration DOPLAP11 DOPLAP11 DOPLAP19
Model Deployment Parse the model with the given configuration DOPLAP11 DOPLAP11 DOPLAP19
Model Deployment Double click to distribute model. ptAgent ptAgent
Model Deployment Double click to distribute model. Launch/start model Launch/start model ptAgent ptAgent
Model Execution CommunicationHelper CommunicationHelper ptAgent ptAgent
Distributed Execution Publisher/Consumer Publisher/Consumer CommunicationHelper CommunicationHelper Event channel ptAgent ptAgent
Distributed Execution in Ptolemy • Two major ways: • Distribute a big model to a set of hosts and have them cooperate when executing to maintain the entire behavior. • Discover applications or models currently running in the system and join them: ex, distributed games, chat rooms.
Chat demo ptAgent ptAgent Host1
Chat demo ptAgent ptAgent Host1
Chat demo connect to ptAgent ptAgent Host1
Future Work • Extend the current implementation to support more domains (e.g., DE, SDF) • Improve communication efficiency to enable high-performance execution • To preserve the semantics of timed domains, realize backtracking with AspectJ • Provide more facility at a lower level, e.g., communication observer, debugger and life-time management