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...
A USB device used to transfer photos from the memory card to a hard drive is called a _____.
A. photo reader B. flash drive reader C. card reader D. USB reader
A(n) ________ defines the criteria that should be applied when a query is run
Fill in the blank(s) with correct word
While making decisions is what makes computers seem intelligent, it's looping that makes computer programming both efficient and worthwhile.
Answer the following statement true (T) or false (F)
The representation of a value from a worksheet cell on a chart is called a(n) _____
a. data point b. absolute cell reference c. data marker d. legend