Phenom II vs Bulldozer vs Zen - test zegar w zegar i porównanie CMT/SMT

Phenom II vs Bulldozer vs Zen - test zegar w zegar i porównanie CMT/SMT

Porównanie architektur AMD - test

W dzisiejszym teście będziecie mogli zobaczyć pojedynek architektur AMD, a konkretniej rozwiązań napędzających procesory Phenom II, FX oraz Ryzen, czyli K10, Bulldozer oraz Zen. Nie jest to jednak zwykłe porównanie, jakie typowo widzicie w artykułach z tej kategorii sprzętowej. Tym razem zdecydowałem się przeprowadzić testy zegar w zegar, dodatkowo doprawiając je zestawieniem CMT oraz SMT, a więc kwestią, która z pewnością interesuje wielu entuzjastów, jednocześnie będąc źródłem mitów i niedopowiedzeń, które wypadałoby wreszcie wyprostować. Zanim przejdę dalej, na dobry początek kilka słów o głównych bohaterach niniejszego materiału. Zaczynając od rodziny Phenom, pierwsze procesory dla komputerów osobistych ją reprezentujące pojawiły się w listopadzie 2007 roku. Od strony architektury K10 stanowi rozwinięcie wcześniej stosowanej K8 (seria Athlon 64). Inżynierowie AMD zdecydowali się na wprowadzenie 128-bitowej jednostki zmiennoprzecinkowej (FPU; ang. Floating-Point Unit), trzeciego poziomu pamięci podręcznej, o pojemności 2 MB, nowych instrukcji ABM oraz SSE4a (nie mylić z SSE4!), a także ulepszeń w zakresie przewidywania skoków (ang. branch predictor) i wczytywania danych z wyprzedzeniem (ang. prefetching). Ponadto poszerzono wewnętrzne szyny oraz dokonano szeregu innych optymalizacji w temacie podsystemów cache/RAM. Niestety, plany rywalizacji z bardzo wydajnymi jednostkami Core 2 od Intela spaliły na panewce, z uwagi na bardzo niskie zegary, zapewne przynajmniej częściowo wynikające z kiepskiego procesu 65 nm SOI. Poprawa przyszła w styczniu 2009 roku, kiedy zadebiutowały Phenomy II X4 (Deneb), korzystające z 45 nm SOI oraz z 6 MB cache L3 (architektura w tym wydaniu nazywana była K10.5). W przypadku rewizji C3 nierzadko widzieliśmy okolice 4 GHz po zaaplikowaniu overclockingu, a to ogromny krok naprzód, dzięki któremu rzeczone CPU okazały się całkiem udanymi, jak na swoje czasy, procesorami. Potem były jeszcze sześciordzeniowe Thubany (kwiecień 2010), zaś na zakończenie życia omawianej technologii APU z serii Llano i K10 odeszła na zasłużoną emeryturę.

Kolejny temat w dziale procesorów to porównanie trzech ostatnich architektur od AMD. Zobaczmy, jak wyglądają relacje między nimi w nowych grach i programach.

Phenom II vs Bulldozer vs Zen - test zegar w zegar i porównanie CMT/SMT

 Intel Core i9-9980XE. Test osiemnastordzeniowego potwora

Historia Bulldozera, czyli jak próbowano się nie narobić, a przy tym zarobić

Kolejną architekturą opracowaną przez AMD jest wspomniana wcześniej Bulldozer, która stanowiła radykalne odejście od idei przyświecającej jej poprzedniczkom. Omawiane rozwiązanie zostało zaprojektowane w myśl podejścia znanego jako CMT (ang. clustered multithreading), wyraźnie stawiając wydajność wielowątkową na pierwszym miejscu. W efekcie, głównym materiałem budulcowym Bulldozera stały się tzw. moduły, które składały się z szeregu zasobów współdzielonych, wśród których wymienić należy front-end (pobieranie i dekodowanie instrukcji, przewidywanie skoków, itd.), jednostkę zmiennoprzecinkową, a także cache L1 dla instrukcji oraz L2. Z kolei zasoby dedykowane to bloki INT, w liczbie sztuk dwóch, oraz wchodząca w ich skład pamięć podręczna pierwszego poziomu dla danych. W stosunku do K10, warto zwrócić uwagę na kilka różnic w obrębie poszczególnych bloków. Przede wszystkim rozbudowano dekoder, który może maksymalnie przetworzyć cztery instrukcje na takt zegara (dla K10 limit wynosił trzy), zamieniając każdą z nich na jedną lub dwie makrooperacje. Zatem teoretyczna przepustowość omawianego elementu wzrosła o 33%. Przechodząc dalej, każdy blok INT jest czteroportowy, gdzie w skład dwóch pierwszych wchodzi pojedyncza jednostka ALU (ang. Arithmetic Logic Unit), podczas gdy do dwóch ostatnich doczepione są AGU (ang. Address Generation Unit). W przypadku K10 wyglądało to nieco inaczej, bowiem mieliśmy trzy porty i w każdym z nich parę AGU/ALU. Oznacza to, że chociaż szerokość wzrosła ponownie o 33%, to jednak utracona została możliwość jednoczesnego wykorzystania trzech jednostek danego rodzaju. Zaś jeśli chodzi o FPU, to zamiast 128-bitowych FADD oraz FMUL, znanych z K10, mamy parę FMAC, a więc jednostek, które są w stanie zarówno mnożyć, jak i dodawać. Innymi słowy, przewaga objawia się w sytuacjach, gdy chcemy wykonać dwie instrukcje jednego rodzaju, podczas gdy w przypadku mieszanym z grubsza wychodzi na to samo. Jak na dłoni widać więc, że Bulldozer w pojedynczym wątku wcale nie musi być szybszy od K10 i właśnie taki stan rzeczy widzieliśmy tuż po premierze rodziny Zambezi.

Phenom II vs Bulldozer vs Zen - test zegar w zegar i porównanie CMT/SMT

 Test procesora AMD Ryzen Threadripper 2990WX. Mocarz o kryształowej szczęce

Koniec modułowej sagi i początek nowego rozdziału - Zen

Ale osiągi poniżej oczekiwań nie były jedynym problemem Bulldozera, bowiem procesory te okazały się także bardzo prądożerne. Dlatego AMD podjęło kilka prób usprawnienia swojego wynalazku. Pierwszą z nich była architektura Piledriver, która zadebiutowała w październiku 2012 jako Vishera, rok po premierze pierwowzoru. Wprowadzono w niej szereg optymalizacji, w zakresie przewidywania skoków i wczytywania danych z wyprzedzeniem, obsługiwanych instrukcji (FMA3) i wykonania niektórych z nich, podsystemu cache, a także dyspozytorów (ang. scheduler) dla FPU oraz bloków INT (tym ostatnim dodano jednostkę odpowiadającą za dzielenie). Wzrost wydajności z tego tytułu był widoczny, a ponadto procesory bazujące na Piledriver charakteryzowały się mniejszym apetytem na energię elektryczną, toteż można było powiedzieć, że dostaliśmy CPU wyraźnie lepsze. Niestety, po tych wydarzeniach AMD postanowiło porzucić platformę AM3+, rozwijając architekturę Bulldozer tylko pod kątem APU. Efektem tych prac były jeszcze dwie generacje - Steamroller oraz Excavator. Pierwsza z nich wprowadzała m.in. dwa dekodery na moduł, podczas gdy druga kontynuowała dzieło, wcielając w życie dalsze ulepszenia. Na kolejny wysokowydajny procesor od AMD przyszło nam natomiast czekać aż do marca 2017 (ponad 4 lata!), kiedy zadebiutowały pierwsze Ryzeny 7, z serii Summit Ridge. Architektura Zen, podobnie jak wcześniej Bulldozer, całkowicie zerwała z założeniami poprzedniczek. AMD zdecydowało się podziękować CMT, stawiając na sprawdzone w boju SMT (ang. simultaneous multithreading), od lat wykorzystywane przez niebieskiego rywala. Obie idee są ze sobą zbieżne, jeśli chodzi o możliwość jednoczesnego wykonania dwóch wątków przez rdzeń/moduł, jednak SMT nie narzuca podziału na bloki, który ogranicza elastyczność. I tak w skład rdzenia Zen wchodzą cztery ALU oraz dwa AGU, a ponadto wprowadzono masę poprawek w temacie dekodera, przewidywania skoków, prefetchingu, wspieranych instrukcji, podsystemu cache, kolejek, czy też tzw. silnika stosu (ang. stack engine). Efekt? Naturalnie drastycznie wyższa wydajność, ale o ile dokładnie, dowiecie się z testów rzeczywistych.

Pokaż / Dodaj komentarze do: Phenom II vs Bulldozer vs Zen - test zegar w zegar i porównanie CMT/SMT

 0