Back to results
US 2014/0156978 A1Published application
Detecting and Filtering Biased Branches in Global Branch History
OwnerMuawya M. AL-OTOOM, Paul CAPRIOLI +1inventors
InventorsMuawya M. AL-OTOOM, Paul CAPRIOLI, Jeffrey J. COOK
Life of this patent
Estimating the term…
Abstract
A processor includes an instruction pipeline for executing instructions including a branching instruction, a counter for counting times that the branching instruction is taken, a register for storing a global branch history as a function of a value of the counter, and a branch prediction unit for predicting branching based on the global branch history.
Claims25
A processor, comprising:
- an instruction pipeline to execute instructions including a branching instruction;
- a counter to count a number of times that the branching instruction is taken;
- a register to store a global branch history as a function of a value of the counter;
- and
- a branch prediction unit to predict branching based on the global branch history.
2 more elements
A processor, comprising:
- a plurality of processing cores, each processing core including:
- an instruction pipeline to execute instructions including a plurality of branching instructions;
- a first register including a plurality of counters, each of the plurality of counters to count respective times that the plurality of branching instructions are taken or not;
- a second register to store a global branch history as a function of a value of the plurality of counters;
- and
- a branch prediction unit to predict branching based on the global branch history.
3 more elements
A system, comprising:
- a processor;
- a memory to store instructions to be executed by the processor;
- the processor including
- an instruction pipeline to execute instructions including a branching instruction;
- a first register including bits as bias indicators to be set by an operating system, each bias indicator indicating whether a branching instruction is biased or not;
- a second register to store a global branch history that is recorded as a function of the bias indicators;
- and
- a branch prediction unit to predict branching based on the global branch history.
5 more elements
A method comprising:
- executing instructions in a processor including a branching instruction;
- counting with a counter a number of times that the branching instruction is taken during execution;
- storing in a register a global branch history as a function of a value of the counter;
- and
- predicting branching with a branch prediction unit based on the global branch history.
2 more elements
Dependencies are inferred from the claim text.