Automatic compound function definition for multiprocessors

Harlan E. Husmann, David J. Kuck, David A Padua

Research output: Contribution to journalArticle

Abstract

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 languageEnglish (US)
Pages (from-to)34-41
Number of pages8
JournalProceedings of the International Conference on Parallel Processing
Volume2
StatePublished - 1988
Externally publishedYes

ASJC Scopus subject areas

  • Hardware and Architecture

Cite this