Branch prediction
Beginner
The processor’s guess about which way the program will go next, so the assembly line can keep moving before it knows for sure.
Novice
A branch is an instruction that chooses which instruction runs next, like an if-statement. A branch predictor guesses the outcome so the pipeline can keep fetching instructions before the branch is resolved. A wrong guess means throwing away the instructions fetched down the wrong path.
Expert
The cost of a wrong guess is roughly the number of stages from fetch to where the branch resolves, so it grows with pipeline depth. Better accuracy lowers the expected cost per stage and so moves the best pipeline depth deeper.