Two algorithms are compared for automatically defining compound functions (tasks) derived from a single program for a multiprocessor architecture. Both algorithms assume that a compound function is represented by a Fortran DO loop. The first algorithm bases its decision on whether a particular loop defines a compound function on the amount of loop parallelism that is available in the loop. The loop's parallelism must be more than a threshold value that is supplied as a parameter to the algorithm. The second algorithm uses more information than the first algorithm when picking compound functions. It estimates a loop's execution time and it compares this estimate with the the estimates for other loops, then it picks compound functions such that the program's execution time estimate is minimized. Using the Parafrase system, these compound function definitions are applied to 61 Fortran programs and the speed-up each compound function definition yields for each program is presented.
|Original language||English (US)|
|Number of pages||8|
|Journal||Proceedings of the International Conference on Parallel Processing|
|State||Published - 1988|
ASJC Scopus subject areas
- Hardware and Architecture