|
|
|
|
|
by ajross
2333 days ago
|
|
It's not an isolated feature, so that's not an answerable question. Branch prediction (and speculation more generally) exists because processors have long pipelines and stalling to resolve a branch affirmatively is slow. Processors have long pipelines because that allows the individual circuit paths to be short and to operate at high clock speeds. If processors didn't want to run at high clock speeds they wouldn't have long pipelines and wouldn't need speculation[1]. And they would be very low power. But also very slow. So you can't really look at a modern architecture and ask how much of its power consumption is because of "branch prediction" vs. other things. They all feed back. [1] They'd still want branch prediction. Everything wants branch prediction. Even the mid-80's RISC architectures implemented in 30k transistors had a "branch delay slot", which was effectively compiler-managed branch prediction for a single cycle of latency. |
|