Abstract
In this paper we describe an approach to the compilation of data-parallel programming languages based on a formally defined intermediate language, called V-cal. The calculus V-cal was designed to represent the semantics of data management and control primitives found in data-parallel languages and allows to describe program transformations and optimizations as semantics preserving rewrite rules.
Based on V-cal we propose a compiler design that meets two objectives: firstly, it provides a platform that allows compiler writers to construct different compilers from a set of implemented transformations and analyses using a modular construction set technique. Secondly, it structures the compilation process into three independent phases to facilitate the reuse of major parts of a compiler when porting it to a different target machine or architecture.
Author is affiliated to N.W.O. and is sponsored by S.I.O.N.
Preview
Unable to display preview. Download preview PDF.
References
F. André, J. Pazat, H. Thomas Pandore: A System to Manage Data Distribution, in Proc. 1990 Intl. Conf. on Supercomputing, The Netherlands, 1990.
U. Banerjee Dependence Analysis for Supercomputing, Kluwer Academic Publishers, 1988.
L. Breebaart, P. Dornbosch The rule language, syntax and semantics, TNO-report, No. 92-TPD/zp-1024, October 1992.
L. Breebaart, P. Dechering, A. Poelman, J. Trescher, H. de Vreught The Booster Language Report, TU Delft, Technical Report, in preparation.
J. Brown, S. Pakin, R. Polivka APL2 at a glance, Prentice Hall, Englewood Cliffs, 1988.
B. Chapman, P. Mehrotra, H. Zima Programming in Vienna Fortran, Scientific Programming, 1(1):31–50, 1992.
J. Cordy, I. Carmichael The TXL Programming Language, Syntax and Informal Semantics, Version 7, Department of Computing and Information Science, Queens University at Kingston, txl@qucis.queensu.ca, 1993
S. Hiranandani, K. Kennedy, C.-W. Tseng Compiler Support for Machine-Independent Parallel Programming in Fortran-D, Technical Report RICE COMP TR91-149, Rice University, March 1991.
J. Hulman, S. Andel, B. Chapman, H. Zima Intelligent Parallelization within the Vienna Fortran Compilation System, in Proc. 4. Intl. Workshop on Compilers for Parallel Computers, Delft 1993, The Netherlands.
C. Kessler Pattern Recognition Enables Automatic Parallelization of Numerical Codes, in Proc. 4. Intl. Workshop on Compilers for Parallel Computers, Delft 1993, The Netherlands.
E. Paalvast, H. Sips A high-level language for the description of parallel algorithms, in Proc. of Parallel Computing '89, North Holland Publ., 1989.
E. Paalvast, A. van Gemund, H. Sips Automatic Parallel Program Generation and Optimization from Data Decompositions in Proceedings, 1991 International Conference Parallel Processing, St. Charles, USA.
E. Paalvast Programming for Parallelism and Compiling for Efficiency, Ph.D. Thesis, TU Delft, 1992.
K. Pieper Parallelizing Compilers: Implementation and Effectiveness, Tech. Rep. Stanford University, Computer Systems Laboratory, CSL-TR-93-575, 1993.
H. Thomas, H. Sips, E. Paalvast A Taxonomy of User-Annotated Programs for Distributed Memory Computers, in Proceedings 1992 International Conference on Parallel Processing, 1992.
N. Wirth Programming in Modula-2, 3. Edition, Springer Heidelberg, 1982.
M. Wolfe Optimizing Supercompilers for Supercomputers, MIT Press, Cambridge, Massachusetts, 1989.
H. Zima with B. Chapman Supercompilers for Parallel and Vector Computers, ACM Press, New York, 1990.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Trescher, J.A., Breebaart, L.C., Dechering, P.F.G., Poelman, A.B., de Vreught, J.P.M., Sips, H.J. (1995). A formal approach to the compilation of data-parallel languages. In: Pingali, K., Banerjee, U., Gelernter, D., Nicolau, A., Padua, D. (eds) Languages and Compilers for Parallel Computing. LCPC 1994. Lecture Notes in Computer Science, vol 892. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0025877
Download citation
DOI: https://doi.org/10.1007/BFb0025877
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-58868-9
Online ISBN: 978-3-540-49134-7
eBook Packages: Springer Book Archive