Title
Improving prediction for procedure returns with return-address-stack repair mechanisms
Abstract
This paper evaluates several mechanisms for repair- ing the return-address stack after branch mispredictions. The return-address stack is a small but important structure for achieving better control-flow prediction accuracy and therefore better performance. But wrong-path execution after mispredictions frequently corrupts the return-address stack, making repair mechanisms necessary. If the proces- sor implements multipath execution—simultaneously exe- cuting both sides of a branch—the contention among dif- ferent paths makes the problem more severe. For conventional, single-path processors, this paper pro- poses saving both the top-of-stack pointer and the top-of- stack contents for later restoration in case of a mispre- diction. This simple technique achieves nearly 100% hit rates and improves performance by up to 8.7% compared to a stack with no repair mechanism. For multipath proces- sors, providing each path with its own return-address stack completely eliminates contention, improving performance by over 25%.
Year
DOI
Venue
1998
10.1109/MICRO.1998.742787
Dallas, TX
Keywords
Field
DocType
computer architecture,performance evaluation,branch mispredictions,procedure returns prediction,return-address stack,return-address-stack repair mechanisms,top-of-stack contents,top-of-stack pointer
Multipath propagation,Pointer (computer programming),Computer science,Parallel computing,Stack register,Stack trace,Real-time computing,Return address stack,Stack-based memory allocation
Conference
ISSN
ISBN
Citations 
1072-4451
0-8186-8609-X
38
PageRank 
References 
Authors
6.40
20
4
Name
Order
Citations
PageRank
Kevin Skadron16188384.18
Pritpal S. Ahuja214417.85
Margaret Martonosi38647715.76
Douglas W. Clark41009266.88