DocumentCode
506131
Title
A methodology for parallelizing programs for multicomputers and complex memory multiprocessors
Author
Ramanujam, J. ; Sadayappan, P.
Author_Institution
Department of Computer and Information Science, The Ohio State University, Columbus, Ohio
fYear
1989
fDate
12-17 Nov. 1989
Firstpage
637
Lastpage
646
Abstract
The availability of large distributed memory multiprocessors and parallel computers with complex memory hierarchies have left the programmer with the difficult task of planning the detailed parallel execution of a program; for example, in the case of distributed memory machines, the programmer is forced to manually distribute code and data in addition to managing communication among tasks explicitly. Current work in compiler support for this task has focused on automating task partitioning, assuming a fixed data partition or a programmer-specified (in the form of annotations) data partition. This paper argues that one of the reasons for inefficient parallel execution is the lack of synergism between task partitioning and data partitioning and allocation; hence data and task allocation should both be influenced by the inherent dependence structure of the computation (which is the source of synergism). We present a methodology based on a unified approach to task and data partitioning; we show how to derive data and task partitions for computations expressed as nested loops that exhibit regular dependencies and how to map these onto distributed memory multiprocessors. Based on the mapping, we show how to derive code for the nodes of a distributed memory machine with appropriate message transmission constructs. We also discuss related communication optimizations.
Keywords
Availability; Concurrent computing; Distributed computing; Memory management; Program processors; Programming profession;
fLanguage
English
Publisher
ieee
Conference_Titel
Supercomputing, 1989. Supercomputing '89. Proceedings of the 1989 ACM/IEEE Conference on
Conference_Location
Reno, NV, United States
Print_ISBN
0-89791-341-8
Type
conf
DOI
10.1145/76263.76335
Filename
5348966
Link To Document