Communication pre-evaluation in HPF
Parallel computers are difficult to program efficiently. We believe that a good way to help programmers write efficient programs is to provide them with tools that show them how their programs behave on a parallel computer. Data distribution is the major performance factor of data-parallel programs and so automatic data layout for High Performance Fortran programs has been studied by many researchers recently. The communication volume induced by a data distribution is a good estimator of the efficiency of this data distribution.
We present here a symbolic method to compute the communication volume generated by a given data distribution during the program writing phase (before compilation). We stay machine-independent to assure portability. Our goal is to help the programmer understand the data movements its program generates and thus find a good data distribution. Our method is based on parametric polyhedral computations. It can be applied to a large class of regular codes.
Unable to display preview. Download preview PDF.
- 2.Vincent Bouchitte, Pierre Boulet, Alain Darte, and Yves Robert. Evaluating array expressions on massively parallel machines with communication/computation overlap. International Journal of Supercomputer Applications and High Performance Computing, 9(3):205–219, 1995.Google Scholar
- 3.S. Chatterjee, J. R. Gilbert, R. S. Schreiber, and S.-H. Tseng. Automatic array alignment in data-parallel programs. In ACM Press, editor, Twentieth Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 16–28, Charleston, South Carolina, January 1993.Google Scholar
- 4.Philippe Clauss, Vincent Loechner, and Doran Wilde. Deriving formulae to count solutions to parameterized linear systems using ehrhart polynomials: Applications to the analysis of nested-loop programs. Technical Report RR 97-05, ICPS, apr 1997.Google Scholar
- 5.Fabien Coelho. Contributions to HPF Compilation. PhD thesis, Ecole des mines de Paris, October 1996.Google Scholar
- 6.Jean-Luc Dekeyser and Christian Lefebvre. Hpf-builder: A visual environment to transform fortran 90 codes to hpf. International Journal of Supercomputing Applications and High Performance Computing, 11(2):95–102, 1997.Google Scholar
- 10.M. Gupta. Automatic Data Partitioning on Distributed Memory Multicomputers. PhD thesis, College of Engineering, University of Illinois at Urbana-Champaign, September 1992.Google Scholar
- 12.Ken Kennedy and Ulrich Kremer. Automatic data layout for High Performance Fortran. In Sidney Karin, editor, Proceedings of the 1995 ACM/IEEE Supercomputing Conference, December 3–8, 1995, San Diego Convention Center, San Diego, CA, USA, New York, NY 10036, USA and 1109 Spring Street, Suite 300, Silver Spring, MD 20910, USA, 1995. ACM Press and IEEE Computer Society Press.Google Scholar
- 14.Jingke Li and Marina Chen. Index domain alignment: Minimizing cost of cross-referencing between distributed arrays. In Frontiers 90: The 3rd Symposium on the Frontiers of Massively Parallel Computation, College Park, MD, October 1990.Google Scholar
- 15.S. Wholey. Automatic data mapping for distributed-memory parallel computers. In ACM, editor, Conference proceedings / 1992 International Conference on Supercomputing, July 19–23, 1992, Washington, DC, INTERNATIONAL CONFERENCE ON SUPERCOMPUTING 1992; 6th, pages 25–34, New York, NY 10036, USA, 1992. ACM Press.Google Scholar
- 16.Doran Wilde. A library for doing polyhedral operations. Master’s thesis, Oregon State University, Corvallis, Oregon, dec 1993.Google Scholar