An integrated compilation and performance analysis environment for data parallel programs

  • Authors:
  • Vikram S. Adve;John Mellor-Crummey;Mark Anderson;Jhy-Chun Wang;Daniel A. Reed;Ken Kennedy

  • Affiliations:
  • Center for Research on Parallel Computation, Rice University, Houston, Texas;Center for Research on Parallel Computation, Rice University, Houston, Texas;Center for Research on Parallel Computation, Rice University, Houston, Texas;Department of Computer Science, University of Illinois, Urbana, Illinois;Department of Computer Science, University of Illinois, Urbana, Illinois;Center for Research on Parallel Computation, Rice University, Houston, Texas

  • Venue:
  • Supercomputing '95 Proceedings of the 1995 ACM/IEEE conference on Supercomputing
  • Year:
  • 1995

Quantified Score

Hi-index 0.00

Visualization

Abstract

Supporting source-level performance analysis of programs written in data-parallel languages requires a unique degree of integration between compilers and performance analysis tools. Compilers for languages such as High Performance Fortran infer parallelism and communication from data distribution directives, thus, performance tools cannot meaningfully relate measurements about these key aspects of execution performance to source-level constructs without substantial compiler support. This paper describes an integrated system for performance analysis of data-parallel programs based on the Rice Fortran 77D compiler and the Illinois Pablo performance analysis toolkit. During code generation, the Fortran D compiler records mapping information and semantic analysis results describing the relationship between performance instrumentation and the original source program. An integrated performance analysis system based on the Pablo toolkit uses this information to correlate the program's dynamic behavior with the data parallel source code. The integrated system provides detailed source-level performance feedback to programmers via a pair of graphical interfaces. Our strategy serves as a model for integration of data-parallel compilers and performance tools.