03.08.2013 Views

Dynamic Dataflow Modeling in Ptolemy II - Ptolemy Project ...

Dynamic Dataflow Modeling in Ptolemy II - Ptolemy Project ...

Dynamic Dataflow Modeling in Ptolemy II - Ptolemy Project ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Abstract<br />

<strong>Dataflow</strong> process networks are a special case of Kahn process networks (PN). In dataflow<br />

process networks, each process consists of repeated fir<strong>in</strong>gs of a dataflow actor, which<br />

def<strong>in</strong>es a quantum of computation. Us<strong>in</strong>g this quantum avoids the complexities and<br />

context switch<strong>in</strong>g overhead of process suspension and resumption <strong>in</strong>curred <strong>in</strong> most<br />

implementations of Kahn process networks. Instead of context switch<strong>in</strong>g, dataflow<br />

process networks are executed by schedul<strong>in</strong>g the actor fir<strong>in</strong>gs. This schedul<strong>in</strong>g can be<br />

done at compile time for synchronous dataflow (SDF) which is a particularly restricted<br />

case with the extremely useful property that deadlock and boundedness are decidable.<br />

However, for the most general dataflow, the schedul<strong>in</strong>g has to be done at run time and<br />

questions about deadlock and boundedness cannot be statically answered. This report<br />

describes and implements a dynamic dataflow (DDF) schedul<strong>in</strong>g algorithm under<br />

<strong>Ptolemy</strong> <strong>II</strong> framework based on orig<strong>in</strong>al work <strong>in</strong> <strong>Ptolemy</strong> Classic. The design of the<br />

algorithm is guided by several criteria that have implications <strong>in</strong> practical implementation.<br />

We compared the performance of SDF, DDF and PN. We also discussed compos<strong>in</strong>g DDF<br />

with other models of computation (MoC). Due to Tur<strong>in</strong>g-completeness of DDF, it is not<br />

easy to def<strong>in</strong>e a mean<strong>in</strong>gful iteration for a DDF submodel when it is embedded <strong>in</strong>side<br />

another MoC. We provide a suite of mechanisms that will facilitate this process. We give<br />

several application examples to show how conditionals, data-dependent iterations,<br />

recursion and other dynamic constructs can be modeled <strong>in</strong> the DDF doma<strong>in</strong>.<br />

3

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!