发明名称 |
DYNAMICALLY ENABLED BRANCH PREDICTION |
摘要 |
Embodiments for a processor that selectively enables and disables branch prediction are disclosed. The processor may include counters to track a number of fetched instructions, a number of branches, and a number of mispredicted branches. A misprediction threshold may be calculated dependent upon the tracked number of branches and a predefined misprediction ratio. Branch prediction may then be disabled when the number of mispredictions exceed the determined threshold value and dependent upon the branch rate. |
申请公布号 |
US2015301832(A1) |
申请公布日期 |
2015.10.22 |
申请号 |
US201414256347 |
申请日期 |
2014.04.18 |
申请人 |
Oracle International Corporation |
发明人 |
Zhang Haowei;Shen Xiaoying;Shah Manish |
分类号 |
G06F9/38;G06F9/30 |
主分类号 |
G06F9/38 |
代理机构 |
|
代理人 |
|
主权项 |
1. An processor, comprising:
a fetch unit configured to speculatively fetch instructions of a predicted branch responsive to a determination that a branch prediction mode has been enabled; a control circuit configured to:
determine, responsive to a determination that a predetermined number of instructions have been fetched, a branch rate value indicative of a number of branch instructions included in the predetermined number of instructions;determine a branch misprediction rate value indicative of a number of mispredicted branch instructions included in the number of branch instructions;enable the branch prediction mode responsive to a determination that the branch misprediction rate value is less than or equal to a first threshold value; anddisable the branch prediction mode responsive to a determination that the branch misprediction rate value is greater than the first threshold value and a determination that the branch rate value is less than a second threshold value. |
地址 |
Redwood City CA US |