Abstract
Contexts formed only from the outcomes of the last several instances of a static branch instruction or that of the last several dynamic branches do not always encapsulate all of the information required for correct prediction of the branch. Complex interactions between data flow and control flow change the context in ways that result in predictability loss for a significant number of dynamic branches. For improving the prediction accuracy, we use contexts derived from the predictable portions of the data flow graph. That is, the predictability of hard-to-predict branches can be improved by taking advantage of the predictability of the easy-to-predict instructions that precede it in the data flow graph. We propose and investigate a run-time scheme for producing such an improved context from the predicted values of preceding instructions. We also propose a novel branch predictor that uses dynamic dataflow-inherited speculative context (DDISC) for prediction. Simulation results verify that the use of dataflow-based contexts yields significant reduction in branch mispredictions, ranging up to 40%. This translates to an overall branch prediction accuracy of 89% to 99.5%.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
B. Calder and G. Reinman, “A Comparative Survey of Load Speculation Architectures,” Journal of Instruction-Level Parallelism1, 2000. 591
J. González and A. González, “Control-Flow Speculation through Value Prediction for Superscalar Processors,” Proc. PACT, pp. 57–65, 1999. 588
T.H. Heil, Z. Smith, and J. E. Smith, “Improving Branch Predictors by Correlating on Data Values,” Proc. Micro, pp. 28–37, 1999. 588, 592
M.H. Lipasti and J. P. Shen, “Exceeding the Dataflow Limit via Value Prediction,” Proc. 29th International Symposium on Microarchitecture (MICRO-29), pp. 226–237, 1996.
S. McFarling, “Combining Branch Predictors,” Technical Report TN-36, Digital Western Research Laboratory, June 1993.
A. Moshovos and G. S. Sohi, “Streamlining Inter-operation Memory Communication via data Dependence Prediction,” Proc. 30th International Symposium on Microarchitecture (MICRO-30), 1997. 591
R. Thomas and M. Franklin, “Using Dataflow Based Context for Accurate Prediction,” Proc. International Conference on Parallel Architectures and Compilation Techniques (PACT), 2001. 587
G. S. Tyson and T.M. Austin, “Improving the Accuracy and Performance of Memory Communication Through Renaming,” Proc. 30th International Symposium on Microarchitecture (MICRO-30), 1997. 591
K. Wang and M. Franklin, “Highly Accurate Data Value Prediction using Hybrid Predictors,” Proc. 30th International Symposium on Microarchitecture (MICRO-30), pp. 281–290, 1997.
T.-Y. Yeh and Y.N. Patt, “Alternative Implementations of Two-Level Adaptive Branch Prediction,” Proc. 19th Annual International Symposium on Computer Architecture, pp. 124–134, 1992.
C. B. Zilles and G. S. Sohi, “Understanding the Backward Slices of Performance Degrading Instructions,” Proc. 27th International Symposium on Computer Architecture, 2000.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Thomas, R., Franklin, M. (2002). Using Dataflow Based Context for Accurate Branch Prediction. In: Sahni, S., Prasanna, V.K., Shukla, U. (eds) High Performance Computing — HiPC 2002. HiPC 2002. Lecture Notes in Computer Science, vol 2552. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-36265-7_55
Download citation
DOI: https://doi.org/10.1007/3-540-36265-7_55
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-00303-8
Online ISBN: 978-3-540-36265-4
eBook Packages: Springer Book Archive