1 / 11

LQCD Workflow Project

LQCD Workflow Project. L. Piccoli October 23, 2006. Kepler slides of Kun Xiao ( kxiao3@iit.edu ). What flows through an object is sequential control. class name. data. methods. call. return. Actor-Oriented (A-O) Design in SWF. Object orientation:. Actor orientation:.

aziza
Download Presentation

LQCD Workflow Project

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. LQCD Workflow Project L. Piccoli October 23, 2006 Kepler slides of Kun Xiao (kxiao3@iit.edu)

  2. What flows through an object is sequential control class name data methods call return Actor-Oriented (A-O) Design in SWF Object orientation: Actor orientation: What flows through an object is streams of data actor name data (state) parameters Input data Output data ports Borrowed from the *.ppt slides by Edward A. Lee (See References)

  3. One Class of Semantic Models: Producer / Consumer process { … write(); … } process { … read(); … } channel port port receiver Model of Computation (MoC) • Semantic interpretations of the abstract syntax • Different models <=> Different semantics <=> Different execution • Models of Computation: • continuous-time • dataflow • rendezvous • discrete events • synchronous • time-driven • publish/subscribe • … • Are actors active? passive? reactive? • Are communications timed? synchronized? buffered? Borrowed from the *.ppt slides by Edward A. Lee (See References)

  4. An Actor-Oriented Workflow

  5. What is Kepler • An open source project • Build on Ptolemy II • Kepler is a software application for the analysis and modeling of scientific data. • Create executable scientific workflows by simply dragging and dropping components.

  6. Strength of Kepler • Concurrency and communication between components • Separates two modeling concerns: component communication (dataflow) and overall workflow coordination (orchestration).

  7. Basic Components in Kepler • Directors • Actors • Parameters • Ports • Relations

  8. CSP Graph Data Kernel CT PN Actor Math DE FSM SDF Software Architecture of Ptolemy II

  9. Anatomy of an actor in Kepler public class ActorClassName extends BaseClass implements MarkerInterface { public ActorClassName (CompositeEntity container, String name) throws NameDuplicationException, IllegalActionException { super(container, name); // Create and configure ports, e.g. ... portName = new TypedIOPort(this, " portName ", true, false); // Create and configure parameters, e.g. ... parameterName = new Parameter(this, " parameterName "); parameterName.setTypeEquals(BaseType.DOUBLE); } //// ports and parameters //// public TypedIOPort portName; public Parameter parameterName; …

  10. Anatomy of an actor in Kepler //// public methods //// public void fire() { ...read inputs and produce outputs... } public void initialize() { ...initialize local variables... } public boolean prefire() { ...determine whether firing should proceed and return false if not... } public void preinitialize() { ...set port types and/or scheduling information... } public boolean postfire() { ...update persistent state... ...determine whether firing should continue to next iteration and return false if not... } public void wrapup() { ...display final results... } }

  11. Kepler

More Related