Issue No. 05 - May (1994 vol. 5)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/71.282560
<p>A new approach is given for scheduling a sequential instruction stream for execution "inparallel" on asynchronous multiprocessors. The key idea in our approach is to exploit thefine grained parallelism present in the instruction stream. In this context, schedules areconstructed by a careful balancing of execution and communication costs at the level ofindividual instructions, and their data dependencies. Three methods are used to evaluateour approach. First, several existing methods are extended to the fine grained situation.Our approach is then compared to these methods using both static schedule lengthanalyses, and simulated executions of the scheduled code. In each instance, our methodis found to provide significantly shorter schedules. Second, by varying parameters suchas the speed of the instruction set, and the speed/parallelism in the interconnectionstructure, simulation techniques are used to examine the effects of various architecturalconsiderations on the executions of the schedules. These results show that our approachprovides significant speedups in a wide-range of situations. Third, schedules produced byour approach are executed on a two-processor Data General shared memorymultiprocessor system. These experiments show that there is a strong correlationbetween our simulation results, and these actual executions, and thereby serve tovalidate the simulation studies. Together, our results establish that fine grainedparallelism can be exploited in a substantial manner when scheduling a sequentialinstruction stream for execution "in parallel" on asynchronous multiprocessors.</p>
Index Termsscheduling; shared memory systems; parallel programming; multiprocessing programs;instruction sets; DAG; asynchronous multiprocessor execution; sequential instructionstream; scheduling; fine grained parallelism; execution costs; communication costs; datadependencies; Data General shared memory multiprocessor system; concurrency;parallelism
B. Malloy, E. Lloyd and M. Soffa, "Scheduling DAG's for Asynchronous Multiprocessor Execution," in IEEE Transactions on Parallel & Distributed Systems, vol. 5, no. , pp. 498-508, 1994.