DocumentCode
2483563
Title
Concurrent SSA for general barrier-synchronized parallel programs
Author
Shah, Harshit ; Shyamasundar, R.K. ; Varma, Pradeep
Author_Institution
Sch. of Technol. & Comput. Sci., Tata Inst. of Fundamental Res., Mumbai, India
fYear
2009
fDate
23-29 May 2009
Firstpage
1
Lastpage
12
Abstract
Static single assignment (SSA) form has been widely studied and used for sequential programs. This form enables many compiler optimizations to be done efficiently. Work on concurrent static single assignment form (CSSA) for concurrent programs is focused on languages that have limited, implicit barriers (e.g., cobegin/coend and parallel do). Recent programming languages for high-performance computing have general features for barrier/phase synchronization - this is essentially a dual of mutual exclusion and arises mainly in constructing synchronous systems from asynchronous systems. X10 is one such language that has features for general purpose barriers. In X10, barriers are provided through features such as clocks and finish. Since barriers provide explicit synchronization, they offer an opportunity for reducing pi interferences needed for CSSA. This paper provides a means for computing improved CSSA form of a program taking advantage of the general barriers present in it. Our algorithm is based on constructing a control-flow graph of the program and flow equations. The efficiency of analysis and optimizations for parallel programs depends on the number and complexity of pi assignments in their CSSA representations. We demonstrate that our approach of computing CSSA form for languages supporting general barrier synchronization can improve the precision of intermediate representation for computing global value numbering and loop invariant detection.
Keywords
concurrency control; data flow graphs; optimising compilers; parallel programming; compiler optimizations; concurrent SSA; concurrent programs; control-flow graph; general barrier-synchronized parallel programs; high-performance computing; sequential programs; static single assignment; Clocks; Computer science; Concurrent computing; Equations; Interference; Laboratories; Optimizing compilers; Parallel languages; Synchronization; Yarn;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel & Distributed Processing, 2009. IPDPS 2009. IEEE International Symposium on
Conference_Location
Rome
ISSN
1530-2075
Print_ISBN
978-1-4244-3751-1
Electronic_ISBN
1530-2075
Type
conf
DOI
10.1109/IPDPS.2009.5161030
Filename
5161030
Link To Document