Semantic parallelization: a practical exercise in abstract interpretation

  • Authors:
  • P. Jouvelot

  • Affiliations:
  • Laboratoire MASI, Université PARIS 6, 4, Place Jussieu, 75252 PARIS Cedex 05, France

  • Venue:
  • POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
  • Year:
  • 1987

Quantified Score

Hi-index 0.00

Visualization

Abstract

The parallelization of sequential programs is an adequate approach for the easy use of architectural features provided on parallel computers. We propose to enhance this technique with the notion of semantic parallelization. The principle is to consider the transformations of programs induced by parallelization as non-standard denotational semantics of the source programming language. We show how to apply this concept to detect, in a toy language ALL, parallelizable complex commands and to deal with some type of programs using indirections. Thanks to results in domain theory and abstract interpretation, we give correctness proofs for these transformations with respect to ALL standard semantic. A byproduct of our approach is that a denotational specification is also an executable prototype ;hence, we were able to implement a semantic parallelizer in the ML functional language. Running examples are supplied.