100 likes | 109 Views
This study proposes a method to improve branch prediction accuracy by considering only the branches in a global history that directly affect a branch's outcome. By focusing on these "affecting" branches, the predictor can make more accurate predictions. The study explores an implementation using an affector register file in SimpleScalar v3.0 with SPEC95 and SPEC00 benchmarks as the basis.
E N D
Improving Branch Prediction by Dynamic Dataflow-based Identification ofCorrelated Branches from a Large Global HistoryRenju Thomas, Manoj FranklinECE DepartmentUniversity of Maryland, College ParkChris WilkersonDesktop Platforms GroupIntel Corporationchris.wilkerson@intel.comJared StarkMicroprocessor ResearchIntel Labsjared.w.stark@intel.com
Basic Idea History-based predictors use a global history to predict a branch. Not all branches in the global history affects a branch e.x. two correlated branches separated by a function call. If use only the history of branches that actually “affect” a branch, the predictor might get more accurate.
What is an affector ? A branch becomes an affector for a future branch if it can affect the outcome of the future branch by choosing whether or not certain instructions that directly affect the future branch’s source operands are executed.
Implementation -SimpleScalar v3.0 -12 benchmarks from SPEC95 and SPEC00 -Perseptron or YAKS as base predictor