Jeśliby jednak usunąć zależność i napisać równoważnie:
a = b + 5 c = b + 15
realizacja superskalarna tych instrukcji będzie możliwa.
Minimalizacja zależności jest kluczowa, aby możliwe było pełne użycie dostępnych zasobów mikroprocesora – o właściwe rozmieszczenie instrukcji dba programista lub kompilator. Ponadto współczesne procesory, np. Pentium Pro i nowsze, mogą zmieniać kolejność wykonywanych instrukcji zachowując jednak zależności między nimi – aby w pełni wykorzystać jednostki wykonawcze odpowiednie mechanizmy wyszukują instrukcje niezależne od siebie i wykonują je równolegle.
Zobacz też potokowość przetwarzanie potokowe wykonywanie spekulatywne
Przypisy
Kategoria:Architektury procesorów