Branch prediction (all processors)
Document - https://www.agner.org/optimize/microarchitecture.pdf The pipeline in a modern microprocessor contains many stages, including instruction fetch, decoding, register allocation and renaming, µop reordering, execution, and retirement. Handling instructions in a pipelined manner allows the microprocessor to do many things at the same time. Branch prediction (in processors) is a technique used by modern processors to improve performance by guessing which branch in a conditional statement (e.g., if-else) will be executed.

Document - https://www.agner.org/optimize/microarchitecture.pdf
The pipeline in a modern microprocessor contains many stages, including instruction fetch, decoding, register allocation and renaming, µop reordering, execution, and retirement.
Handling instructions in a pipelined manner allows the microprocessor to do many things at the same time.
Branch prediction (in processors) is a technique used by modern processors to improve performance by guessing which branch in a conditional statement (e.g., if-else) will be executed.