loading...
 This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
19th IEEE International Parallel and Distributed Processing Symposium (IPDPS'05) - Papers
Control-Flow Independence Reuse via Dynamic Vectorization
Denver, Colorado
April 04-April 08
ISBN: 0-7695-2312-9
Alex Pajuelo, Universitat Polit?cnica de Catalunya, Barcelona, Spain
Antonio Gonz?lez, Universitat Polit?cnica de Catalunya, Barcelona, Spain
Mateo Valero, Universitat Polit?cnica de Catalunya, Barcelona, Spain
Current processors exploit out-of-order execution and branch prediction to improve instruction level parallelism. When a branch prediction is wrong, processors flush the pipeline and squash all the speculative work. However, control-flow independent instructions compute the same results when they re-enter the pipeline down the correct path. If these instructions are not squashed, branch misprediction penalty can significantly be reduced.
In this paper we present a novel mechanism that detects control-flow independent instructions, executes them before the branch is resolved, and avoids their re-execution in the case of a branch misprediction. The mechanism can detect and exploit control-flow independence even for instructions that are far away from the corresponding branch and even out of the instruction window.
Performance figures show that the proposed mechanism can exploit control-flow independence for nearly 50% of the mispredicted branches, which results in a performance improvement that ranges from 14% to 17,8% for realistic configurations of forthcoming microprocessors.
Citation:
Alex Pajuelo, Antonio Gonz?lez, Mateo Valero, "Control-Flow Independence Reuse via Dynamic Vectorization," ipdps, vol. 1, pp.21a, 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS'05) - Papers, 2005
Usage of this product signifies your acceptance of the Terms of Use.