RUNTIME AND LANGUAGE SUPPORT FOR COMPILING ADAPTIVE IRREGULAR PROGRAMS ON DISTRIBUTED-MEMORY MACHINES

被引:27
作者
HWANG, YS
MOON, B
SHARMA, SD
PONNUSAMY, R
DAS, R
SALTZ, JH
机构
[1] SYRACUSE UNIV, NW PARALLET ARCHITECTURES CTR, SYRACUSE, NY 13244 USA
[2] UNIV MARYLAND, UMIACS, COLLEGE PK, MD 20742 USA
关键词
DISTRIBUTED-MEMORY MULTIPROCESSORS; RUNTIME COMPILATION; ADAPTIVE IRREGULAR PROGRAMS; PARALLELIZING COMPILERS;
D O I
10.1002/spe.4380250603
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In many scientific applications, arrays containing data are indirectly indexed through indirection arrays. Such scientific applications are called irregular programs and are a distinct class of applications that require special techniques for parallelization. This paper presents a library called CHAOS, which helps users implement irregular programs on distributed-memory message-passing machines, such as the paragon, Delta, CM-5 and SP-1. The CHAOS library provides efficient runtime primitives for distributing data and computation over processors; it supports efficient index translation mechanisms and provides users high-level mechanisms for optimizing communication. CHAOS subsumes the previous PARTI library and supports a larger class of applications. In particular, it provides efficient support for parallelization of adaptive irregular programs where indirection arrays are modified during the course of computation. To demonstrate the efficacy of CHAOS, two challenging real-life adaptive applications were parallelized using CHAOS primitives: a molecular dynamics code, CHARMM, and a particle-in-cell code, DSMC. Besides providing runtime support to users, CHAOS tan also be used by compilers to automatically parallelize irregular applications. This paper demonstrates how CHAOS can be effectively used in such a framework. By embedding CHAOS primitives in the Syracuse Fortran 90D/HPF compiler, kernels taken from the CHARMM and DSMC codes have been automatically parallelized.
引用
收藏
页码:597 / 621
页数:25
相关论文
共 42 条
[1]  
Fox G., Hiranandani S., Kennedy K., Koelbel C., Kremer U., Tseng C., Wu M., Fortran D language specification, (1990)
[2]  
(1993)
[3]  
Chapman B., Mehrotra P., Zima H., Programming in Vienna Fortran, Scientific Programming, 1, 1, pp. 31-50, (1992)
[4]  
Bozkus Z., Choudhary A., Fox G., Haupt T., Ranka S., Wu M.-Y., Compiling Fortran 90D/HPF for distributed‐memory MIMD computers, Journal of Parallel and Distributed Computing, 21, 1, pp. 15-26, (1994)
[5]  
Hanxleden R.V., Kennedy K., Saltz J., (1993)
[6]  
Ponnusamy, Saltz, Choudhary, Hwang, Fox, (1993)
[7]  
Mirchandaney R., Saltz J.H., Smith R.M., Nicol D.M., Crowley, pp. 140-152, (1988)
[8]  
Mavriplis D.J., (1991)
[9]  
Brooks B.R., Bruccoleri R.E., Olafson B.D., States D.J., Swaminathan S., Karplus M., Charmm: A program for macromolecular energy, minimization, and dynamics calculations, Journal of Computational Chemistry, 4, (1983)
[10]  
Weiner P.K., Kollman P.A., Amberassisted model building with energy refinement, a general program for modeling molecules and their interactions, Journal of Computational Chemistry, 2, (1981)