Przetwarzanie potokowe 26.10.06, materiały edukacyjne, SOISK(sys operacyjne i sieci komp )


Przetwarzanie potokowe

Uzywanie w celu zwiększenia wydajności. Strategia potoku - na jednym końcu są przyjmowane nowe elementy wejściowe zanim jeszcze elementy poprzednio przyjęte ukażą sie na wyjściu. Podczas wykonywania jednego rozkazu istnieją takie przedziały czasowe, kiedy nienastępują odniesienia do pamięci głównej. Wówczas mozna pobrać następny rozkaz róznolegle z wykonywaniem bieżącego.

--Rozkaz-->[ Pobieranie ]--Rozkaz-->[ Wykonywanie ]--Wynik-->

Potok przebiega w dwóch niezależnych etapach. W pierwszym nastepuje pobranie i zbuforowanie rozkazu. Gdy drugi etap jest wolny, następuje przekazanie do niego zbuforowanego rozkazu. Podczas gdy w drugim etapie wykonywany jest rozkaz, w pierwszym wykorzystuje sie jeden z nieuzywanych cykli pamięci w celu pobrania i zbuforowania następnego rozkazu. Nazywa sie to pobieraniem rozkazu z wyprzedzeniem (ang. instruction prefetch) lub pobieraniem na zakładkę (ang. fetch overlap)

Jeżeli etapy pobierania i wykonywania zajmowałyby tyle samo czasu, cały proces skróciłby się 2x. Jednak wykonywanie jest na ogół dłuższe niż pobieranie, więc etap pobierania musi zawierać pewien czas oczekiwania na opróznienie bufora. Poza tym rozkaz skoku warunkowego powoduje, że adres następnego rozkazu przewidzianego do pobrania jest nieznany. Wobec tego realizacja pobierania może nastąpic dopiero po otrzymaniu adresu następnego rozkazu, który zostanie określony po zakończeniu wykonywania. Natomiast na etapie wykonywania następuje oczekiwanie na pobranie kolejnego rozkazu.
0x01 graphic

Strata czasu może byc zmniejszona przez zgadywanie. Gdy rozkaz rozgałęzienia warunkowego przechodzi z etapu pobierania do wykonywania na etapie pobierania następuje pobranie następnego rozkazu po rozkazie rozgałęzienia. (Rozkaz jest pobierany, niezależnie czy jego warunek jest spełniony. Tego narazie nie wiemy, ale jeśli się okaże, że warunek spełniony, to niestrracilismy czasu i "obrabiamy" ten rozkaz dalej. Jeśli się okaże, że warunek nie jest spełniony, to wyrzucamy ten rozkaz i pobieramy nowy)

Aby jeszcze zwiększyć tempo potok musi mieć więcej etapów:

Przy założeniu, że czasy trwania poszczególnych etapów sa równe, czas wykonania rozkazów zmniejsza się z 54 do 14 jednostek czasu. Dla uproszczenia zakładamy, że każdy rokaz przechodzi przez wszytkie etapy potoku i że wszystkieetapy mogą być realizowane równolegle - nie ma konfliktów dostępu do pamięci.
Ograniczenia poprawy wydajności:

Sześcioetapowy potok rozkazów procesora
0x01 graphic


Mogłoby się wydawać, że im więcej etapów tym szybsze wykonywanie rokazów. Są jednak czynniki, które zaburzają ten sposób zwiększania wydajności:

  1. Na każdym etapie potoku występuje pewien narzut związany z przenoszeniem danych z bufora oraz z wykonywaniem różnych działań przygotowawczych, co może wydłuzyć całkowity czas wykonania rokazu, szczególnie jeśli rozkazy sekwencyjne sa logicznie zależne albo przez częste rozgałęzianie, albo przez uzależniony dostęp do pamięci.

  2. Wraz z liczbą etapów wzrasta znacząco liczba układów logicznych potrzebnych do zapobieagania konfliktom rejetrów i pamięci - może się zdarzyć, że układy logiczne sterujace przejściami między etapami sa bardziej złożone niż same etapy.

Metody postępowania z rozgałęziami warunkowaymi

Rozgałęzienie warunkowejest zasadnicza przeszkoda dla stałego napływu rozkazów do początkowych etapów potoku - aż do zakończenia wykonywania tego rozkazu nie jest mozliwe stwierdzenie, czy rozgałęźienie nastapi, czy nie.
Istenieją różne sposoby postępowania:



Wyszukiwarka

Podobne podstrony:
SOiSK 5.10.06, materiały edukacyjne, SOISK(sys operacyjne i sieci komp )
Przekierowanie wejścia i wyjścia, materiały edukacyjne, SOISK(sys operacyjne i sieci komp )
Rejestr, materiały edukacyjne, SOISK(sys operacyjne i sieci komp )
SoiSk20.11.07, materiały edukacyjne, SOISK(sys operacyjne i sieci komp )
API- komunikaty, materiały edukacyjne, SOISK(sys operacyjne i sieci komp )
Soisk2, materiały edukacyjne, SOISK(sys operacyjne i sieci komp )
Rejestr a urządzenia Plug, materiały edukacyjne, SOISK(sys operacyjne i sieci komp )
Rejestr3, materiały edukacyjne, SOISK(sys operacyjne i sieci komp )
rejest windows, materiały edukacyjne, SOISK(sys operacyjne i sieci komp )
soisk15, materiały edukacyjne, SOISK(sys operacyjne i sieci komp )
12.10.06, technik informatyk, soisk utk
Zagadnienia do egzaminu 1 sem SOiSK, Sytemy Operacyjne i Sieci Komputerowe
SUTEL19-06, aaa, studia 22.10.2014, Materiały od Piotra cukrownika, materialy Kamil, płytkas V, Scia
10.11.06, technik informatyk, soisk utk
edukacja education fce wszystkie z 2013 10 06 u 406698
WSM 10 06 26 pl
Kosci, kregoslup 28[1][1][1] 10 06 dla studentow
Plyta CD materialy edukacyjne dla nauczycieli i rodzicow

więcej podobnych podstron