The importance of having a good branch predictor depends on how often conditional branches are executed. Together with branch predictor accuracy, this will determine how much time is spent stalling due to mispredicted branches. In this exercise, assume that the breakdown of dynamic instructions into various instruction categories is as follows: R-Type BEQ JMP LW SW 40% 25% 5% 25% 5% Also, assume the following branch predictor accuracies: Always – Taken Always-Not-Taken 2-Bit 40% 60% 75% a. Stall cycles due to mispredicted branches increase the CPI. What is the extra CPI due to mispredicted branches with the always-taken predictor? Assume that branch outcomes are determined in the EX stage, that there are no data hazards, and that no delay slots are used. b. Repeat for the “always-not-taken” predictor. c. Repeat for the 2-bit predictor.
The importance of having a good branch predictor depends on how often conditional branches
are executed. Together with branch predictor accuracy, this will determine how much time is
spent stalling due to mispredicted branches. In this exercise, assume that the breakdown of
dynamic instructions into various instruction categories is as follows:
R-Type BEQ JMP LW SW
40% 25% 5% 25% 5%
Also, assume the following branch predictor accuracies:
Always – Taken Always-Not-Taken 2-Bit
40% 60% 75%
a. Stall cycles due to mispredicted branches increase the CPI. What is the extra CPI due to
mispredicted branches with the always-taken predictor? Assume that branch outcomes are
determined in the EX stage, that there are no data hazards, and that no delay slots are used.
b. Repeat for the “always-not-taken” predictor.
c. Repeat for the 2-bit predictor.
Trending now
This is a popular solution!
Step by step
Solved in 3 steps