Data and Process Abstraction in PIPS Internal Representation - Mines Paris
Communication Dans Un Congrès Année : 2011

Data and Process Abstraction in PIPS Internal Representation

Fabien Coelho
Pierre Jouvelot
Corinne Ancourt
François Irigoin

Résumé

PIPS, a state-of-the-art, source-to-source compilation and optimization platform, has been under development at MINES Paris-Tech since 1988, and its development is still running strong. Initially designed to perform automatic interprocedural parallelization of Fortran 77 programs, PIPS has been extended over the years to compile HPF (High Performance Fortran), C and Fortran 95 programs. Written in C, the PIPS framework has shown to be surprisingly resilient, and its analysis and transformation phases have been reused, adapted and extended to new targets, such as generating code for special purpose hardware accelerators, without requiring significant re-engineering of its core structure. We suggest that one of the key features that explain this adaptability is the PIPS internal representation (IR) which stores an abstract syntax tree. Although fit for source-to-source processing, PIPS IR emphasized from its origins the use of maximum abstraction over target languages' specificities and generic data structure manipulation services via the Newgen Domain Specific Language, which provides key features such as type building, automatic serialization and powerful iterators. The state of software technology has significantly advanced over the last 20 years and many of the pioneering features introduced by Newgen are nowadays present in modern programming frameworks. However, we believe that the methodology used to design PIPS IR, and presented in this paper, remains relevant today and could be put to good use in future compilation platform development projects.

Domaines

Compilation
Fichier principal
Vignette du fichier
A-447.pdf (123.3 Ko) Télécharger le fichier
A-459.pdf (102.27 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Format Autre

Dates et versions

hal-00744291 , version 1 (22-10-2012)

Identifiants

  • HAL Id : hal-00744291 , version 1

Citer

Fabien Coelho, Pierre Jouvelot, Corinne Ancourt, François Irigoin. Data and Process Abstraction in PIPS Internal Representation. First Workshop on Intermediate Representations (WIR-1), Apr 2011, Chamonix, France. ⟨hal-00744291⟩
189 Consultations
216 Téléchargements

Partager

More