DocumentCode
925833
Title
Compiler optimizations for enhancing parallelism and their impact on architecture design
Author
Polychronopoulos, Constantine D.
Author_Institution
Center for Superconducting Res. & Dev., Illinois Univ., Urbana, IL, USA
Volume
37
Issue
8
fYear
1988
fDate
8/1/1988 12:00:00 AM
Firstpage
991
Lastpage
1004
Abstract
By examining the structure and characteristics of parallel programs the author isolates potential overhead sources. The first compiler optimization considered is cycle shrinking which can be used to parallelize certain types of serial loops. A run-time dependence analysis is then considered along with how it can be performed through compiler-inserted bookkeeping and control statements. Loops with unstructured parallelism, that cannot benefit from existing optimizations, can be parallelized through run-time dependence checking. Finally, barrier synchronization is discussed as one of the most serious sources of run-time overhead in parallel programs. To reduce the impact of barriers, the author briefly discusses the implementation of distributed barriers through the use of a set of shared registers
Keywords
optimisation; parallel programming; program compilers; barrier synchronization; compiler-inserted bookkeeping; cycle shrinking; distributed barriers; parallel programs; run-time dependence analysis; run-time overhead; shared registers; Application software; Concurrent computing; Design optimization; Hardware; Optimizing compilers; Parallel machines; Parallel processing; Performance analysis; Registers; Runtime;
fLanguage
English
Journal_Title
Computers, IEEE Transactions on
Publisher
ieee
ISSN
0018-9340
Type
jour
DOI
10.1109/12.2249
Filename
2249
Link To Document