ABSTRACT

In this chapter the limits of the ordered-transactions scheduling strategy are systematically analyzed. Recall that the self-timed schedule is obtained by first generating a fully-static schedule , and then ignoring the exact firing times specified by the fully-static schedule; the fully-static schedule itself is derived using compile time estimates of actor execution times of actors. As defined in the previous chapter, the ordered-transactions strategy is essentially the self-timed strategy with added ordering constraints that force processors to communicate in an order predetermined at compile time. The questions addressed in this chapter are: What exactly are we sacrificing by imposing such a restriction? Is it possible to choose a transaction such that this penalty is minimized? What is the effect of variations of task (actor) execution times on the throughput achieved by a self-timed strategy and by an ordered transactions strategy?