Spatial-Temporal Analysis of Program Dependence Graphs for Useful Parallelism
The efficient execution of a parallel algorithm depends on balancing the granularity or degree of parallelism of the computation against overhead due to parallelism. This dependence on the architecture inhibits portability in parallel software. This paper presents techniques for analyzing and restru...
Saved in:
Published in | Journal of parallel and distributed computing Vol. 19; no. 2; pp. 103 - 118 |
---|---|
Main Authors | , , , , , |
Format | Journal Article |
Language | English |
Published |
San Diego, CA
Elsevier Inc
01.10.1993
Elsevier |
Subjects | |
Online Access | Get full text |
Cover
Loading…
Summary: | The efficient execution of a parallel algorithm depends on balancing the granularity or degree of parallelism of the computation against overhead due to parallelism. This dependence on the architecture inhibits portability in parallel software. This paper presents techniques for analyzing and restructuring programs for execution on varying parallel computer architectures. The stages in reconfiguring a computation for parallel execution are described and three novel and useful techniques are presented. The first is a graph structural analysis technique, graph parsing, in which a parse tree of subgraphs known as clans is created. Through this process, the underlying graph structure is exposed. The parse tree represents opportunities for parallelism as well as dependence that inhibits parallelism. Next, it is shown how the parse tree can be given a spatial-temporal interpretation, where the spatial dimension can be interpreted as the processor requirements and the temporal dimension as the execution and communication latency. Finally, we discuss the application of architecture metrics which model the underlying architecture. Through knowledge of inter-processor communication costs, execution times, and other overhead requirements, it is possible to restrict the parallelism to only that which will reduce the time required to complete the computation. The metric yields the identification of appropriate grains for the type of overhead incurred. |
---|---|
ISSN: | 0743-7315 1096-0848 |
DOI: | 10.1006/jpdc.1993.1095 |