для продолжения того, что сказано ....
рассмотрим этот сценарий ...
char x =read some byte from a memory;
int a = 10+ 20;
print/use char x;
теперь, когда это происходит ... процессору придется ждатьпока данные не будут считаны из памяти (это называется остановом конвейера) .. неисполнение позволяет процессору продолжать работу и выполнять команду = 10 + 20, поскольку это никоим образом не зависит от ранее вычисленных ответов ... этопредотвращает срыв