Generating explicit communication from shared-memory program references
- 4 December 2002
- proceedings article
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
This paper addresses the problem of data distribution and communication synthesis in generating parallel programs targeted for massively parallel, distributed-memory machines. The source programs can be sequential, functional, or parallel programs based on a shared-memory model. Our approach is to analyze source program references and match syntactic reference patterns with appropriate aggregate communication routines which can be implemented efficiently on the target machine. We use an explicit communication metric to guide optimizations to reduce communication overhead. The target code with explicit communication is proven to be free from deadlock introduced by the compilation process.Keywords
This publication has 10 references indexed in Scilit:
- Process decomposition through locality of referencePublished by Association for Computing Machinery (ACM) ,1989
- A methodology for parallelizing programs for multicomputers and complex memory multiprocessorsPublished by Association for Computing Machinery (ACM) ,1989
- Compiling parallel programs by optimizing performanceThe Journal of Supercomputing, 1988
- Compiling programs for distributed-memory multiprocessorsThe Journal of Supercomputing, 1988
- Compiling C* programs for a hypercube multicomputerPublished by Association for Computing Machinery (ACM) ,1988
- SUPERB: A tool for semi-automatic MIMD/SIMD parallelizationParallel Computing, 1988
- Automatic translation of FORTRAN programs to vector formACM Transactions on Programming Languages and Systems, 1987
- Automatic decomposition of scientific programs for parallel executionPublished by Association for Computing Machinery (ACM) ,1987
- A parallel language and its compilation to multiprocessor machines or VLSIPublished by Association for Computing Machinery (ACM) ,1986
- High-Speed Multiprocessors and Compilation TechniquesIEEE Transactions on Computers, 1980