What is the difference between static and dynamic branch prediction?
What will be an ideal response?
Static prediction takes place before any code is executed; that is, it does not use feedback from the actual running of the code to make a prediction. Dynamic prediction uses information from the past behavior of the program to predict the future behavior. Dynamic prediction is more accurate than static prediction.
Static prediction relies on factors such as the static behavior of individual branches (e.g., this branch type is
usually taken, this one is not). Such an approach is relatively crude. The compiler can analyze code and make a
guess about the outcome of branches and then set a hint bit in the code. The processor uses this hint bit to decide whether the branch will be taken. Note that not all computers have a branch hint bit.
Dynamic branch prediction observes the history of branches (either individually or collectively) and the position of branches in the program to decide whether to take or not take a branch. Dynamic prediction can be very accurate in many circumstances.
You might also like to view...
Which of the following port is associated with NetBIOS?
a. 21 b. 80 c. 139 d. 443
Identify the letter of the choice that best matches the phrase or definition.
A. Identifies the element you are applying a style to B. Fonts displayed reliably in most Web browsers on most devices C. Represents each color intensity as a decimal number from 0 to 255 D. The space between characters E. Specifies color intensity values using the base 16 system F. A heading that has letters of one word or several words that are spaced apart G. A style rule that is embedded inside an HTML start tag H. Provides a setting for an associated feature I. A style sheet that is a set of style rules contained between the end tag in the head section of an HTML document J. The combination of a selector, a property, and a value K. A style sheet connected by the link element L. The name of a specific feature such as color, text-align, or font-size