Portable, parallelizing Pascal compiler
- 1 March 1993
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Software
- Vol. 10 (2) , 71-81
- https://doi.org/10.1109/52.199740
Abstract
The structure and implementation of P/sup 3/C, a compiler that uses relatively simple parallelization techniques to produce highly efficient code for both shared-memory and distributed-memory MIMD multiprocessors, are discussed. P/sup 3/C is a fully automatic, portable parallelizing Pascal compiler for scientific code, which is characterized by loops operating on regular data structures. P/sup 3/C compiles the same source code to all target machines without modification. P/sup 3/C gives an accurate estimate about whether the parallel code will actually reduce execution time over serial code, taking into account the associated overhead. It derives the estimate by statically analyzing the program at compile time, referring to a table of the target machine's parameters. Speedups of up to 24 have been achieved on a Sequent Symmetry with 25 active processors. The estimated speedup was within 8% of the actual figure.Keywords
This publication has 8 references indexed in Scilit:
- Compiling Fortran D for MIMD distributed-memory machinesCommunications of the ACM, 1992
- Interactive parallel programming using the ParaScope EditorIEEE Transactions on Parallel and Distributed Systems, 1991
- Data-parallel programming on multicomputersIEEE Software, 1990
- VMMP: a practical tool for the development of portable and efficient programs for multiprocessorsIEEE Transactions on Parallel and Distributed Systems, 1990
- PARAFRASE-2: AN ENVIRONMENT FOR PARALLELIZING, PARTITIONING, SYNCHRONIZING, AND SCHEDULING PROGRAMS ON MULTIPROCESSORSInternational Journal of High Speed Computing, 1989
- Development of Parallel Methods for a $1024$-Processor HypercubeSIAM Journal on Scientific and Statistical Computing, 1988
- A single-program-multiple-data computational model for EPEX/FORTRANParallel Computing, 1988
- Mos: A multicomputer distributed operating systemSoftware: Practice and Experience, 1985