On-demand dynamic branch prediction

7Citations
Citations of this article
18Readers
Mendeley users who have this article in their library.
Get full text

Abstract

In out-of-order (OoO) processors, speculative execution with high branch prediction accuracy is employed to achieve good single thread performance. In these processors the branch prediction unit tables (BPU) are accessed in parallel with the instruction cache before it is known whether a fetch group contains branch instructions. For integer applications, we find 85 percent of BPU lookups are done for non-branch operations and of the remaining lookups, 42 percent are done for highly biased branches that can be predicted statically with high accuracy. We evaluate on-demand branch prediction (ODBP), a novel technique that uses compiler generated hints to identify those instructions that can be more accurately predicted statically to eliminate unnecessary BPU lookups. We evaluate an implementation of ODBP that combines static and dynamic branch prediction. For a four wide superscalar processor, ODBP delivers as much as 9 percent improvement in average energy-delay (ED) product, 7 percent core average energy saving, and 3 percent speedup. ODBP also enables the use of large BPU's for a given power budget.

Cite

CITATION STYLE

APA

Mohammadi, M., Han, S., Aamodt, T. M., & Dally, W. J. (2015). On-demand dynamic branch prediction. IEEE Computer Architecture Letters, 14(1), 50–53. https://doi.org/10.1109/LCA.2014.2330820

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free