Semantic foundations of commutativity analysis

  • Martin C. Rinard
  • Pedro C. Diniz
Workshop 03 Automatic Parallelization and High Performance Compilers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1123)


This paper presents the semantic foundations of commutativity analysis, an analysis technique for automatically parallelizing programs written in a sequential, imperative programming language. Commutativity analysis views the computation as composed of operations on objects. It then analyzes the program at this granularity to discover when operations commute (i.e. generate the same result regardless of the order in which they execute). If all of the operations required to perform a given computation commute, the compiler can automatically generate parallel code. This paper shows that the basic analysis technique is sound. We have implemented a parallelizing compiler that uses commutativity analysis as its basic analysis technique; this paper also presents performance results from two automatically parallelized applications.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    U. Banerjee, R. Eigenmann, A. Nicolau, and D. Padua. Automatic program parallelization. Proceedings of the IEEE, 81(2):211–243, February 1993.CrossRefGoogle Scholar
  2. 2.
    J. Barnes and P. Hut. A hierarchical O(NlogN) force-calculation algorithm. Nature, pages 446–449, December 1976.Google Scholar
  3. 3.
    G. Huet. Confluent reductions: Abstract properties and applications to term rewriting systems. Journal of the ACM, 27(4):797–821, 1980.CrossRefGoogle Scholar
  4. 4.
    R. Kemmerer and S. Eckmann. UNISEX: a UNIx-based Symbolic EXecutor for pascal. Software—Practice and Experience, 15(5):439–458, May 1985.Google Scholar
  5. 5.
    M. Rinard and P. Diniz. Commutativity analysis: A new analysis framework for parallelizing compilers. Technical Report TRCS96-08, Dept. of Computer Science, University of California at Santa Barbara, May 1996.Google Scholar
  6. 6.
    M. Rinard and P. Diniz. Semantic foundations of commutativity analysis. Technical Report TRCS96-09, Dept. of Computer Science, University of California at Santa Barbara, May 1996.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Martin C. Rinard
    • 1
  • Pedro C. Diniz
    • 1
  1. 1.Department of Computer ScienceUniversity of California, Santa BarbaraSanta Barbara

Personalised recommendations