Compiler Algorithms for Synchronization

Samuel P. Midkiff, David A. Padua

Research output: Contribution to journalArticlepeer-review

Abstract

Translating program loops into a parallel form is one of the most important transformations performed by concurrentizing compilers. This transformation often requires the insertion of synchronization instructions within the body of the concurrent loop. Several loop synchronization techniques are presented first. Compiler algorithms to generate synchronization instructions for singly-nested loops are then discussed. Finally, a technique for the elimination of redundant synchronization instructions is presented.

Original languageEnglish (US)
Pages (from-to)1485-1495
Number of pages11
JournalIEEE Transactions on Computers
VolumeC-36
Issue number12
DOIs
StatePublished - Dec 1987

Keywords

  • Compilers
  • Fortran
  • concurrent loops
  • multiprocessors
  • parallel processing
  • program restructuring
  • synchronization

ASJC Scopus subject areas

  • Software
  • Theoretical Computer Science
  • Hardware and Architecture
  • Computational Theory and Mathematics

Fingerprint

Dive into the research topics of 'Compiler Algorithms for Synchronization'. Together they form a unique fingerprint.

Cite this