loading...
Loop recreation for thread-level speculation
Hsinchu, Taiwan December 05-December 07
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ICPADS.2007.444771313th International Conference on Para ...
 This Article 
 
PDF
HTML
 
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
null Lin Gao, University of New South Wales, Australia
null Lian Li, University of New South Wales, Australia
null Jingling Xue, University of New South Wales, Australia
null Tin-Fook Ngai, Microprocessor Technology Lab, Intel, Australia
For some sequential loops, existing techniques that form speculative threads only at their loop boundaries do not adequately expose the speculative parallelism inherent in them. This is because some inter-iteration dependences, which translate into inter-thread dependences at run time, are too costly to synchronize or speculate. This paper presents a novel compiler technique, called loop recreation, to transform a loop into a prologue, a kernel loop — formed with instructions from two adjacent iterations, and an epilogue so that the inter-iteration dependences in the kernel are less costly to enforce at run time than those in the original loop. We prove the concept by giving an algorithm for finding an optimal loop recreation with respect to a simple misspeculation cost model and by demonstrating performance advantages of loop recreation over two recent techniques for speculative multi-core systems running four irregular applications with indirect array accesses.
Citation:
null Lin Gao, null Lian Li, null Jingling Xue, null Tin-Fook Ngai, "Loop recreation for thread-level speculation," icpads, vol. 1, pp.1-10, 13th International Conference on Parallel and Distributed Systems - Volume 1 (ICPADS'07), 2007
Usage of this product signifies your acceptance of the Terms of Use.