Determining the Order of Processor Transactions in StaticallyScheduled Multiprocessors

  • Authors:
  • S. Sriram;Edward A. Lee

  • Affiliations:
  • Department of Electrical Engineering and Computer Sciences, Cory Hall, University of California, Berkeley CA 94720;Department of Electrical Engineering and Computer Sciences, Cory Hall, University of California, Berkeley CA 94720

  • Venue:
  • Journal of VLSI Signal Processing Systems
  • Year:
  • 1997

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper addresses embedded multiprocessor implementationof iterative, real-time applications, such as digital signal andimage processing, that are specified as dataflow graphs. Schedulingdataflow graphs on multiple processors involves assigning tasks toprocessors (processor assignment), ordering the execution of taskswithin each processor (task ordering), and determining when each taskmust commence execution. We consider three scheduling strategies:fully-static, self-timed and ordered transactions, all of whichperform the assignment and ordering steps at compile time. Run timecosts are small for the fully-static strategy; however it is notrobust with respect to changes or uncertainty in task executiontimes. The self-timed approach is tolerant of variations in taskexecution times, but pays the penalty of high run time costs, becauseprocessors need to explicitly synchronize whenever they communicate.The ordered transactions approach lies between the fully-static andself-timed strategies; in this approach the order in which processorscommunicate is determined at compile time and enforced at run time.The ordered transactions strategy retains some of the flexibility ofself-timed schedules and at the same time has lower run time coststhan the self-timed approach.In this paper we determine an order of processor transactions that isnearly optimal given information about task execution times atcompile time, and for a given processor assignment and task ordering.The criterion for optimality is the average throughput achieved bythe schedule. Our main result is that it is possible to choose atransaction order such that the resulting ordered transactionsschedule incurs no performance penalty compared to the more flexibleself-timed strategy, even when the higher run time costs implied bythe self-timed strategy are ignored.