Title :
Speculative synchronization: programmability and performance for parallel codes
Author :
Martínez, José F. ; Torrellas, Josep
Author_Institution :
Cornell Univ., Ithaca, NY, USA
Abstract :
Proper synchronization is vital to ensuring that parallel applications execute correctly. A common practice is to place synchronization conservatively so as to produce simpler code in less time. unfortunately, this practice frequently results in suboptimal performance because it stalls threads unnecessarily. Speculative synchronization overcomes this problem by allowing threads to speculatively execute past active barriers, busy locks, and unset flags. The result is high performance.
Keywords :
optimising compilers; parallel programming; software reliability; synchronisation; active barriers; busy locks; parallel applications; parallel codes; speculative synchronization; suboptimal performance; unset flags; Application software; Checkpointing; Hardware; Logic; Out of order; Program processors; Programming profession; Runtime; Yarn;
Journal_Title :
Micro, IEEE
DOI :
10.1109/MM.2003.1261396