Lubię myśleć o tym z analogią do prania. Instrukcje procesora są jak duże pranie. Musisz użyć zarówno pralki, jak i suszarki dla każdego ładunku. Powiedzmy, że każda z nich zajmuje 30 minut. To jest cykl zegara. Stare procesory uruchamiały pralkę, a następnie uruchamiały suszarkę, co trwało 60 minut (2 cykle) do zakończenia każdego załadunku prania za każdym razem.
Rurociągi : Rurociąg ma miejsce wtedy, gdy używasz obu jednocześnie - myjesz ładunek, a podczas suszenia myjesz następny ładunek. Pierwsze ładowanie zajmuje 2 cykle, ale drugie ładowanie kończy się po 1 kolejnym cyklu. Tak więc większość obciążeń potrzebuje tylko 1 cyklu, z wyjątkiem pierwszego obciążenia.
Superscalar: Zabierz wszystkie pranie do pralni. Zdobądź 2 podkładki i załaduj je obie. Po zakończeniu znajdź 2 suszarki i użyj ich obu. Teraz możesz umyć i wysuszyć 2 wsady w 60 minut. To jest 2 obciążenia w 2 cyklach. Każde obciążenie nadal trwa 2 cykle, ale możesz teraz zrobić więcej. Średni czas wynosi teraz 1 obciążenie na cykl.
Superscalar z układaniem rur: umyj pierwsze 2 ładunki, a następnie, gdy są one suszone, załaduj podkładki następnymi 2 ładunkami. Teraz pierwsze 2 obciążenia nadal wymagają 2 cykli, a kolejne 2 są zakończone po 1 kolejnym cyklu. Tak więc przez większość czasu kończysz 2 obciążenia w każdym cyklu.
Wiele rdzeni: Daj połowę prania swojej matce, która ma również 2 pralki i 2 suszarki. Oboje pracując razem, możecie zrobić dwa razy więcej. Jest to podobne do superskalarnego, ale nieco inne. Zamiast samemu przenosić wszystkie pranie do iz każdej maszyny, może to zrobić w tym samym czasie, co Ty.
To świetnie, możemy zrobić osiem razy więcej prania niż wcześniej w tym samym czasie, bez konieczności tworzenia szybszych maszyn. (Podwojona prędkość zegara: pralki, których uruchomienie zajmuje tylko 15 minut.)
Porozmawiajmy teraz o tym, jak coś pójdzie nie tak:
Pęcherzyk rurociągu: masz plamę, która nie wyszła z prania, więc postanawiasz ją umyć ponownie. Teraz suszarka po prostu tam siedzi i czeka na coś do zrobienia.
Pamięć podręczna: ciężarówka, która dostarcza brudne pranie, utknęła w korku. Teraz masz 2 pralki i 2 suszarki, ale nie wykonujesz żadnej pracy, ponieważ musisz czekać.
W zależności od tego, jak często coś pójdzie nie tak, nie zawsze będziemy w stanie wykonać 4 obciążenia w każdym cyklu, więc rzeczywista ilość wykonanej pracy może się różnić.
Przewidywanie gałęzi: Cóż, zaczynasz robić pranie na czystych ubraniach, na wypadek, gdyby później je poplamili, aby były czyste ... okej, tutaj analogia się załamuje ...