Optimization of Machine Descriptions for Efficient Use

  • Authors:
  • John C. Gyllenhaal;Wen-Mei W. Hwu;B. Ramakrishna Rau

  • Affiliations:
  • -;-;-

  • Venue:
  • International Journal of Parallel Programming
  • Year:
  • 1998

Quantified Score

Hi-index 0.00

Visualization

Abstract

A machine description facility allows compiler writers to specify machine execution constraints to the optimization and scheduling phases of an instructionlevel parallelism (ILP) optimizing compiler. The machine description (MDES) facility should support quick development and easy maintenance of machine execution constraint descriptions by compiler writers. However, the facility should also allow compact representation and efficient usage of the MDES during compilation. This paper advocates a model that allows compiler writers to develop the MDES in a high-level language, which is then translated into a low-level representation for efficient use by the compiler. The discrepancy between the requirements of the high-level language and the low-level representation is reconciled with a collection of transformations that derive efficient lowlevel representations from the easy-to-understand high-level descriptions. In order to support these transformations, a novel approach to representing machine execution constraints has been developed. Detailed and precise descriptions of the execution constraints for the HP PA7100, Intel Pentium, SUN SuperSPARC, and AMD-K5 processors, as well as two hypothetical wider-issue processor configurations, are analyzed to show the advantage of using this new representation. The results show that performing these transformations and utilizing the new representation allow easy-to-maintain detailed descriptions written in high-level languages to be efficiently used by ILP-optimizing compilers.