Title |
Dynamic Hybrid Indirect Branch Predictor |
Authors |
안종현(JongHyun An) ; 김은성(Eun-Sung Kim) |
DOI |
https://doi.org/10.5573/ieie.2022.59.7.12 |
Keywords |
ILP; Indirect branch; Path-based prediction; Value-based prediction; Dynamic hybrid prediction |
Abstract |
Modern processors attempt to execute instructions without disruption or pause in the flow in order to maximize the instruction-level parallelism (ILP). As the branch instruction is a major obstacle in reducing performance by disturbing the pipeline, the processor speculatively runs the branch instructions to the direction and target predicted in advance. However, in the case of a misprediction, the performance penalty drastically increases as the sequence of executed instructions must be flushed. For the indirect branch in particular, the target frequently changes, making it hard to predict and thus degrading the performance. Our prior study has shown that although the value-based target look-ahead (TLA) prediction method perfectly predicts the target, its performance suffers due to cycle delays, resulting in a costly target prediction standby penalty. In this paper, we propose a dynamic hybrid predictor that dynamically applies path-based predictor for easy-to-predict indirect branch and value-based TLA hard-to-predict indirect branch, combining the advantages of the two methods and thus improving overall performance. We implement the aforementioned predictor on the Gem5 simulator, and then show its superior performance by running the MicroBench and SPEC2006 benchmarks. |