THE PARADIGM COMPLIER FOR DISTRIBUTED-MEMORY MULTICOMPUTERS

被引:55
作者
BANERJEE, P
CHANDY, JA
GUPTA, M
HODGES, EW
HOLM, JG
LAIN, A
PALERMO, DJ
RAMASWAMY, S
SU, E
机构
[1] University of Illinois, Urbana-Champaign
基金
美国国家航空航天局;
关键词
Program compilers;
D O I
10.1109/2.467577
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
The authors describe a flexible compiler framework for distributed-memory multicomputers, called Paradigm (Parallelizing Compiler for Distributed-Memory, General-Purpose Multicomputers). To extract computational power from a multicomputer, users must often expend significant time and energy to write efficient software. Paradigm addresses this problem by automatically parallelizing sequential programs. Besides handling traditional compiler optimizations, Paradigm focuses on several other areas within a unified platform. These include automatic data distribution, com communication optimizations, support for irregular computations, exploitation of functional and data parallelism, and multithreaded execution. Automatic data partitioning involves several choices. These include array alignment, distribution (block or cyclic), block size, and mesh configuration. Paradigm addresses these decisions in distinct phases. The compiler supports both regular and irregular computations. For regular computations, the compiler uses efficient processor-tagged descriptors to handle the simplest and most frequent cases. It uses more general, inequality-based representations for the difficult cases. This lets Paradigm compile a larger proportion of programs without-jeopardizing compilation speed. In addition, to reduce the overhead caused by frequent communications, the compiler employs message coalescing, message verification, message aggregation, and coarse-grain pipelining. For irregular computations, Paradigm uses two sequences of code: an inspector for preprocessing and an executor for performing the actual computations. The Parallel Irregular Library with Application of Regularity (PILAR) provides Paradigm's irregular runtime support. Finally, the authors describe how Paradigm uses functional and data parallelism and multithreading to improve overall execution efficiency.
引用
收藏
页码:37 / +
相关论文
共 12 条
[1]  
ANCOURT C, 1991, 3RD P ACM SIGPLAN S, P39
[2]  
GUPTA M, 1993, 7TH P ACM INT C SUP
[3]   COMPILING FORTRAN-D [J].
HIRANANDANI, S ;
KENNEDY, K ;
TSENG, CW .
COMMUNICATIONS OF THE ACM, 1992, 35 (08) :66-80
[4]  
HOLM JG, 1994, 1994 P SCAL HIGH PER, P518
[5]  
KOELBEL CH, 1994, HIGH PERFORMANCE FOR
[6]  
LAIN A, 1995, 9TH P INT PAR PROC S
[7]  
PALERMO DJ, 1994, 23RD P INT C PAR PRO, V2, P1
[8]  
POLYCHRONOPOULO.CD, 1989, 1989 P INT C PAR PRO, V2, P39
[9]  
Ponnusamy R., 1993, Proceedings SUPERCOMPUTING '93, P361, DOI 10.1145/169627.169752
[10]  
RAMASWAMY S, 1994, 23RD P INT C PAR PRO, V2, P116