Issue No.11 - November (1991 vol.40)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/12.102826
<p>Four scheduling strategies for dataflow graphs onto parallel processors are classified: (1) fully dynamic, (2) static-assignment, (3) self-timed, and (4) fully static. Scheduling techniques valid for strategies (2), (3), and (4) are proposed. The focus is on dataflow graphs representing data-dependent iteration. A known probability mass function for the number of cycles in the data-dependent iteration is assumed, and how a compile-time decision about assignment and/or ordering as well as timing can be made is shown. The criterion used is to minimize the expected total idle time caused by the iteration. In certain cases, this will also minimize the expected makespan of the schedule. How to determine the number of processors that should be assigned to the data-dependent iteration is shown. The method is illustrated with a practical programming example.</p>
compile time scheduling; assignment; data-flow program graphs; data-dependent iteration; parallel processors; fully dynamic; static-assignment; self-timed; fully static; probability mass function; idle time; programming; parallel programming; program compilers; program processors; scheduling.
S. Ha, "Compile-Time Scheduling and Assignment of Data-Flow Program Graphs with Data-Dependent Iteration", IEEE Transactions on Computers, vol.40, no. 11, pp. 1225-1238, November 1991, doi:10.1109/12.102826