Title
Compile Time Barrier Synchronization Minimization
Abstract
This paper presents a new compiler approach to minimizing the number of barriers executed in parallelized programs. A simple procedure is developed to reduce the complexity of barrier placement by eliminating certain data dependences, without affecting optimality. An algorithm is presented which, provably, places the minimal number of barriers in perfect loop nests and in certain imperfect loop nest structures. This scheme is generalized to accept entire, well-structured control-flow programs containing arbitrary nesting of IF constructs, loops, and subroutines. It has been implemented in a prototype parallelizing compiler and applied to several well-known benchmarks where it has been shown to place significantly fewer synchronization points than existing techniques. Experiments indicate that on average the number of barriers executed is reduced by 70 percent and there is a three fold improvement in execution time when evaluated on a 32-processor SGI Origin 2000.
Year
DOI
Venue
2002
10.1109/TPDS.2002.1011394
IEEE Trans. Parallel Distrib. Syst.
Keywords
Field
DocType
sun,parallel programming,message passing,compiler optimization,algorithms,complexity,prototypes,synchronisation,subroutines,scalability,minimisation
Synchronization,Subroutine,Computer science,Compile time,Parallel computing,Optimizing compiler,Compiler,Real-time computing,Minimisation (psychology),Minification,Execution time,Distributed computing
Journal
Volume
Issue
ISSN
13
6
1045-9219
Citations 
PageRank 
References 
6
0.63
22
Authors
2
Name
Order
Citations
PageRank
Michael F. P. O'Boyle1110165.55
Elena Stöhr2649.52