1 / 22

Distributed Execution of Ptolemy Models Yang Zhao (ellen_zh@eecs) Thomas H. Feng (tfeng@eecs)

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

Download Presentation

Distributed Execution of Ptolemy Models Yang Zhao (ellen_zh@eecs) Thomas H. Feng (tfeng@eecs)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Distributed Execution of Ptolemy Models Yang Zhao (ellen_zh@eecs) Thomas H. Feng (tfeng@eecs) Class Project for EE290N

  2. Demo

  3. 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)

  4. Register (1) Naming Service ptAgent ptAgent ptAgent

  5. Register (2) Naming Service ptAgent Register to Naming Service (ptAgent, Models) ptAgent ptAgent

  6. Lookup (1) Naming Service ptAgent Look up to Naming Service (ptAgent, Models) ptAgent ptAgent

  7. Lookup (2) Naming Service ptAgent after look up for ptAgent ptAgent ptAgent

  8. 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.

  9. Lookup for Available ptAgents

  10. Configuration DOPLAP11 DOPLAP11 DOPLAP19

  11. Model Deployment Parse the model with the given configuration DOPLAP11 DOPLAP11 DOPLAP19

  12. Model Deployment Double click to distribute model. ptAgent ptAgent

  13. Model Deployment Double click to distribute model. Launch/start model Launch/start model ptAgent ptAgent

  14. Model Execution CommunicationHelper CommunicationHelper ptAgent ptAgent

  15. Distributed Execution Publisher/Consumer Publisher/Consumer CommunicationHelper CommunicationHelper Event channel ptAgent ptAgent

  16. 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.

  17. Chat demo ptAgent ptAgent Host1

  18. Chat demo ptAgent ptAgent Host1

  19. Chat demo connect to ptAgent ptAgent Host1

  20. Yet another way to use

  21. Yet another way to use

  22. 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

More Related