Abstract
Programming Distributed Memory Parallel Computers (DMPCs) usually requires a lot of work both at the algorithmic level and at the programming level. We investigate here how to produce code for DMPCs from high level programming languages. We propose a language, a compiler and a run-time support which allow to program DMPCs with a sequential language including data distribution statements. The distribution statements allow the user to express data partitioning which will enforce code parallelization. One important feature of our approach is that data distribution does not modify the result of the program in any case, efficiency depends only on data distribution.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
C. D. Polychronopoulos, M. Girkar, M. R. Haghighat, C. L. Lee, B. Leung, and D. Schouten. PARAPHRASE-2; an environment for parallelizing, partitioning, synchronizing, and scheduling programs on multiprocessors. Int. Journal of High Speed Computing, 1(1):45–72, 1989.
N. Carriero, D. Gelernter, and J. Leichter. Distributed data structures in linda. In Thirteenth Annual ACM Symposium on Principles of Programming Languages, pages 236–242, 1986.
C.A.R. Hoare. Communicating sequential processes. Communications of the ACM, 21(8):666–677, August 1978.
Estelle: A Formal Description Technique Based on a Extended State Transition Model. ISO. ISO/TC97/SC21/WG1, IS9074.
C. Koebel and P. Mehrotra. Supporting Shared Data Structures on Distributed Memory Architectures. Technical Report csd-tr 915, Department of Computer Science, Purdue University, 1990.
K. Li and R. Schaefer. A hypercube shared virtual memory system. In 1989 International Conference on Parallel Processing, pages 125–132, 1989.
D. Badouel, K. Bouatouch, and T. Priol. Ray tracing on distributed memory parallel computers: strategies for distributing computations and data. In S. Whitman, editor, Parallel Algorithms and architectures for 3D Image Generation, pages 185–198, ACM Siggraph '90 Course 28, Aout 1990.
M. J. Quinn and P. J. Hatcher. Compiling SIMD programs for MIMD architectures. In ACM Sigplan (PPEALS), 1990.
A. P. Reeves. The Paragon Programming Paradigm and Distributed Memory Multicomputers. Technical Report EE-CEG-90-7, Cornell University, June 1990.
M. Rosing, R. B. Schnabel, and R. P. Weaver. The DINO Parallel Programming Language. Technical Report CU-CS-457-90, University of Colorado at Boulder, 1990.
C. Koelbel, P. Mehrotra, J. Saltz, and H. Berryman. Parallel loops on distributed machines. In 5' Int. Conf. on Distributed Memory Computing Conference, April 1990.
H. P. Zima, H.-J. Bast, and M. Gerndt. SUPERB: a tool for semi-automatic MIMD/SIMD parallelization. Parallel Computing, (6):1–18, 1988.
D. Callahan and K. Kennedy. Compiling programs for distributed-memory multiprocessors. Journal of Supercomputing, 2:151–169, 1988.
F. André, J.-L. Pazat, and H. Thomas. PANDORE: a system to manage data distribution. In Int. Conf. on Supercomputing, pages 380–388, June 1990.
A. Rogers and K. Pingali. Process decomposition through locality of reference. In Conference on Programming Language Design and Implementation, pages 69–80, ACM, June 21–23 1989.
K. Ikudome, G. C. Fox, A. Kolawa, and J. W. Flower. An automatic and symbolic parallelization system for distributed memory parallel computers. In 5′ Distributed Memory Computing Conference, April 1990.
E. M. Paalvast and A. J. Van Gemund. A method for parallel program generation with an application to the Booster language. In Int. Conf. on Supercomputing, pages 457–469, June 1990.
R. Ruhl and M. Annaratone. Parallelization of FORTRAN Code on distributed memory parallel processors. In Int. Conf. on Supercomputing, pages 342–353, June 1990.
G.-R. Perrin, P. Clauss, and S. Damy. Mapping programs on regular distributed architectures. In F. Andre and J.-P. Verjus, editors, 1st Conference on Hypercube and Distributed Computers, pages 175–188, INRIA, North Holland, October 1989.
P. Quinton. Mapping recurrences on parallel architectures. In 3′ nternational Conference on Supercomputing, 1988.
M. Wolfe. Optimizing Supercompilers for Supercomputers. Research Monographs in Parallel and Distributed Computing, Pitman, MIT press edition, 1989.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1991 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Pazat, JL. (1991). Code generation for data parallel programs on DMPCs. In: Bode, A. (eds) Distributed Memory Computing. EDMCC 1991. Lecture Notes in Computer Science, vol 487. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0032950
Download citation
DOI: https://doi.org/10.1007/BFb0032950
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-53951-3
Online ISBN: 978-3-540-46478-5
eBook Packages: Springer Book Archive