Different instructions may take different amounts of time; for example, a processor may be able to execute hundreds of instructions while a single load from the main memory is in progress.
Consider this piece of code running on an out-of-order CPU: .