branch prediction


Also found in: Dictionary, Thesaurus, Medical, Legal, Financial.

branch prediction

[′branch prə‚dik·shən]
(computer science)
A method whereby a processor guesses the outcome of a branch instruction so that it can prepare in advance to carry out the instructions that follow the predicted outcome.

branch prediction

(processor, algorithm)
A technique used in some processors with instruction prefetch to guess whether a conditional branch will be taken or not and prefetch code from the appropriate location.

When a branch instruction is executed, its address and that of the next instruction executed (the chosen destination of the branch) are stored in the Branch Target Buffer. This information is used to predict which way the instruction will branch the next time it is executed so that instruction prefetch can continue. When the prediction is correct (and it is over 90% of the time), executing a branch does not cause a pipeline break.

Some later CPUs simply prefetch both paths instead of trying to predict which way the branch will go.

An extension of the idea of branch prediction is speculative execution.

branch prediction

In CPU instruction execution, predicting the outcome of a branch so that those instructions may be executed in parallel with the current instructions. If the CPU guesses the wrong branch, it will take extra machine cycles to go back and execute the correct one; however, on average, if the prediction algorithms are good, overall performance is increased. See predication and branch.
References in periodicals archive ?
In other words, branch prediction is determined by the branch history pattern and not by the input condition leading to the next state.
The second proposal generalizes the BPRU, improving its functionality with a twofold objective: first, that it could be used as an independent confidence estimator, and second, continuing with the application to branch inversion, that it could be used in conjunction with any correlating branch predictor in a hybrid scheme as an effective approach to increasing the original branch prediction accuracy.
The average speedup for SPECint95 was 5.6% for perfect branch prediction and 3.4% with the combining predictor.
A branch prediction scheme that exploits branch correlation requires more detailed execution information than that provided by traditional (point) profiles.
Briefly, multiple branch prediction anticipates jumps in the instruction flow, data flow analysis determines the optimal sequence for instruction processing; and speculative execution is a method of looking ahead for useful work to perform.
disabling branch prediction. One possible alternative is known as a
Next generation branch prediction technology, deeper buffers for more instruction parallelism, and increased clock speeds combine to help increase performance while maintaining overall TDP.
Keywords: Branch Prediction, Two-Level Predictor, Gshare, Generalized Branch Predictor
Tag comparison, branch prediction, and instruction decode are outside the critical fetch loop [5].
Moreover, even though both value prediction and branch prediction use a similar technology, there are fundamental differences between the goals of these mechanisms.
The name program-based branch prediction is given to static branch prediction techniques that base their prediction on a program's structure.
This last isn't a brand-new feature, but companies are often cagey about the exact details of how they implement branch prediction in silicon.