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 - podsumowanie

Podsumowanie rezultatów przeprowadzonych testów pozwolę sobie rozpocząć od porównania drugiej generacji architektury Bulldozer, czyli Piledriver, oraz najnowszej technologii AMD, którą jest Zen (chociaż właściwie powinienem napisać Zen+, z uwagi na włączoną opcję Performance Bias, o której pisałem na stronie z platformą), starego dobrego Phenoma II zostawiając na koniec. Patrząc na zgromadzone wyniki, nietrudno dojść do wniosku, że jedyna grupa pomiarów, dla której zysk można określić jako dobry, ale nie oszałamiający, to kompresja, gdzie wzrost wydajności sięga 23,5-24,3%. Przechodząc natomiast na drugi koniec skali, na szczególną uwagę zasługują osiągi Zena w konwersji audio z wykorzystaniem enkodera Monkey's Audio (134,8-142,9% szybciej), projekcie XANSONS na platformie BOINC (96%), szyfrowaniu algorytmami Camellia oraz Kuznyechik (82,4-95,6%), renderingu w Blenderze (73,1-84,1%; propagandową scenę Ryzen pomijam), a także dwóch syntetykach: Time Spy Extreme z pakietu 3DMark (109,9/113%, odpowiednio dla instrukcji SSE3/AVXFMA) oraz przeglądarkowym Kraken 1.1 (100,5%). Pozostałych testów nie będę już dokładnie analizował, bo to może zrobić każdy zainteresowany - dodam jedynie, że supremacja nowszej architektury wynosi przynajmniej 35,5%, najczęściej przekraczając magiczny pułap 50% (średnio wynosi aż 64,6%). Nie inaczej jest w przypadku gier, gdzie Zen również pięknie pozamiatał Bulldozerem podłogę, zapewniając nieporównywalnie wyższy komfort rozgrywki. Aby rzucić chociaż kilkoma wartościami liczbowymi, chciałbym zwrócić uwagę, że najmniejsza przewaga nowszej technologii została odnotowana w Far Cry Primal, w wysokości 42,2%, podczas gdy w Battlefield 4 miała miejsce sytuacja odwrotna i Zen wyprzedził swojego poprzednika aż o 63,8%. Zaś średnia różnica między porównywanymi architekturami, oczywiście na korzyść tej napędzającej rodzinę Ryzen, wynosi 53,7% - mniej niż w przypadku aplikacji, ale dalej zacnie.

Zgodnie z oczekiwaniami, architektura Zen okazała się najwydajniejszą spośród porównywanych architektur AMD. Niemniej niektóre rezultaty potrafią zaskoczyć.

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

 Podkręcanie AMD Athlon 200GE na płycie MSI B350M MORTAR - test

Zysk wydajności z tytułu CMT oraz SMT

Przechodząc zaś do porównania CMT oraz SMT, w niemal wszystkich aplikacjach i ich ustawieniach większe przyspieszenie zapewniła pierwsza z wymienionych technik. Piszę niemal, gdyż jednak trafił się rodzynek w postaci 3DMarka i testu Fire Strike Ultra, ale ten jednostkowy przypadek rzecz jasna nie zmienia ogólnego obrazu sytuacji. Zupełnie inną sprawą jest natomiast to, że najczęściej aktywne CMT pozwala Bulldozerowi co najwyżej osiągnąć poziom zbliżony do tego, jaki reprezentuje Zen bez dodatkowego wspomagania, ale i od tej reguły pojawiło się kilka wyjątków, czyli sytuacji, gdzie starsza technologia w rzeczonych warunkach potrafiła dość wyraźnie pokonać swoją następczynię. Wśród tych ostatnich można wymienić kompilację za pomocą GCC, rendering w POV-Ray, szyfrowanie algorytmami innymi niż Kuznyechik, a nade wszystko 7-Zipa, gdzie Piledriver naprawdę się rozhulał, dorównując Ryzenowi z włączonym SMT (sic!). Identycznie sytuacja wygląda w grach, w których CMT zapewniło średnie przyspieszenie w wysokości 27,9%, podczas gdy dla alternatywnej techniki było to 17,3%. O tym, czy taki stan rzeczy świadczy o rzeczywistej przewadze pierwszego podejścia nad drugim, czy też uzyskane rezultaty należy traktować raczej w kategorii nagrody pocieszenia, będzie później, gdyż wypadałoby się jeszcze pochylić na rezultatami w programach jedno- oraz dwuwątkowych. Nieco paradoksalnie, okazało się, że aktywacja CMT/SMT pozwoliła także w owych przypadkach uzyskać delikatny wzrost osiągów. Nie ma w tym jednak żadnej magii, wynikającej z właściwości wymienionych technik - całość sprowadza się do funkcjonowania dyspozytora zadań (ang. scheduler) systemu Windows 10. Ten ostatni zupełnie inaczej zachowuje się przy czterech i ośmiu wątkach. W drugim przypadku obciążenie jednowątkowe jest niemal przez cały czas, z niewielkimi fluktuacjami, przypisane do ostatniego procesora logicznego. Zaś w pierwszym dzieło Microsoftu konsekwentnie rozbija je na wszystkie dostępne rdzenie, co oczywiście nie pomaga wydajności. Patrząc na sprawę z perspektywy Bulldozera, Dziesiątka, która teoretycznie ma świadomość jego specyficznej, modułowej budowy, w sposób nieco bardziej cywilizowany zachowuje się w konfiguracji 2M/4T niż 4C/4T, ale w obu przypadkach działanie systemu dalekie jest od ideału. Za najlepszy komentarz niech posłuży fakt, że pod Siódemką jest po prostu... lepiej.

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

 Test zestawu z Chin - Intel Xeon E5-1650 v2 i płyta główna HUANAN X79

CMT czy SMT - które podejście jest lepsze?

I w tym właśnie momencie wypadałoby się zastanowić, które rozwiązanie jest bardziej sensowne - CMT czy SMT. Co prawda patrząc na wyniki wydajności, pokrótce omówione akapit wyżej, można by dojść do wniosku, że pierwsza z wymienionych technik jest lepsza, gdyż zapewnia wyższe skalowanie, ale w ten sposób umyka nam bardzo istotny szczegół. CMT w zasadzie z definicji poświęca wydajność jednego wątku, jako że z uwagi na podział na bloki w takim przypadku mamy dostępną tylko połowę jednostek wykonawczych dla liczb całkowitych (ograniczenia tego nie ma SMT). Dlatego też trudno mówić, że lepsze skalowanie jest zaletą CMT, skoro to tylko korzyść pozorna, maskująca największą wadę tego podejścia. Rzecz jasna w przypadku Bulldozera najpewniej dochodzi również temat front-endu, który co prawda ma całkiem niezłą maksymalną przepustowość, ale do jej uzyskania potrzebuje uruchomionych dwóch wątków, co jeszcze bardziej pogłębia problemy z wydajnością jednowątkową. Niemniej jednak, nie zmienia to faktu, że z punktu widzenia osiągów podział jednostek wykonawczych na bloki nie ma żadnego sensu, w porównaniu z taką samą ich liczbą, ale dostępną bez względu na okoliczności. Ale puśćmy wodze fantazji i wyobraźmy sobie mutację Zena w myśl CMT, czyli mniej więcej z dołożonym drugim blokiem czterech ALU i dwóch AGU. Jak dobrze wiemy, nawet najnowsza architektura AMD ma spory problem z wykarmieniem zasobów przez front-end przy pojedynczym wątku. A właśnie zdublowaliśmy część jednostek wykonawczych (poza FPU, ale je także można rozbudować!) i na każdy z bloków, podobnie jak przy Bulldozerze, będzie przypadać tylko jeden wątek. Trudno się więc w takim przypadku spodziewać czegokolwiek innego niż problemów z efektywnym wykorzystaniem zasobów, które tranzystory jednak zabierają.

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

Puśćmy więc wodze fantazji jeszcze mocniej i wprowadźmy hipotetyczną  hybrydę CMT i SMT, w efekcie dostając moduł dwurdzeniowy (zostańmy przy tej nomenklaturze) i... czterowątkowy (notabene SMT4 to żadna nowość). Oczywiście takie podejście jeszcze bardziej skomplikuje projekt niż samo CMT czy SMT, ale rozwiąże problem z efektywnością. Tyle, że wracamy do punktu wyjścia i w dalszym ciągu nie ma ono istotnych zalet na tle braku podziału na bloki i czystego SMT, a za to wadę w postaci ograniczonej elastyczności. Ergo sensowność naszych wynalazków, w miarę, jak staramy się znaleźć jakąś niszę dla podejścia znanego z Bulldozera, staje pod coraz większym znakiem zapytania. Zostawiając już tego mutanta z boku i skupiając się na samym CMT, przy rozsądnych założeniach dla tej techniki, a więc nie do przesady rozbudowanych blokach, nieco mniejsze skomplikowanie realizacji niż przy SMT, z uwagi na skromniejszą ilość współdzielonych elementów, w żadnym wypadku nie neutralizuje poważnej wady, którą jest mizerna wydajność pojedynczego wątku. Jakbyśmy na ową kwestię nie chcieli spojrzeć, nie zanosi się na to, aby w najbliższym czasie znaczenie tego aspektu spadło do zera (wbrew twierdzeniom niektórych "ewangelistów"). Zawsze możemy trafić na grę, która z wielowątkowością jest na bakier, a ponadto nie należy zapominać o bardziej poważanych zastosowaniach, jak chociażby grafika 3D, gdzie czynności projektowe wymagają właśnie mocnego wątku. Dlatego też SMT wydaje się być po prostu lepszym rozwiązaniem - bardziej zbalansowanym i zapewniającym lepszy stopień wykorzystania dostępnych zasobów. Zresztą fakt, że AMD postawiło przysłowiowy krzyżyk na CMT, jest bardziej niż wymowny.

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

 Intel Core i9-9900K - test procesora z linii Coffee Lake Refresh

Jak dzisiaj sprawuje się Phenom II

Na koniec został jeszcze zapowiadany wcześniej Phenom II. Nie da się ukryć, że niegdyś najmocniejsza rodzina procesorów AMD mocno się zestarzała, głównie z uwagi na archaiczny zbiór obsługiwanych instrukcji. Możliwości K10 kończą się na SSE3, zatem procesory bazujące na tej architekturze nie wspierają SSSE3, SSE 4.1 czy SSE 4.2, o AVX i późniejszych zestawach nawet nie wspominając. Ów niedobór objawia się na dwa sposoby, powodując albo problemy kompatybilnościowe, albo wydajnościowe. Zaczynając od tych pierwszych, aplikacje wymagające nowszych instrukcji po prostu się nie uruchomią i podobnie sprawa dotyczy niektórych gier. Wśród programów wchodzących w skład procedury testowej idealnym przykładem jest 3ds Max, gdzie twórca jasno podaje, że bez SSE 4.2 nie ma co podchodzić, zatem błąd przy próbie jego włączenia nie był żadnym zaskoczeniem. Jeżeli zaś chodzi o kwestię osiągów, to archaiczność K10 najlepiej widać podczas konwersji wideo z użyciem x265, w którym to teście Phenom II zanotował gigantyczną stratę do Bulldozera, który był przeszło dwukrotnie szybszy. Ale to wszystko nie oznacza, że staruszek nie potrafi pokazać się z dobrej strony. Architektura K10 w niektórych próbach naprawdę pokazała pazur, wyraźnie pokonując swoją następczynię chociażby w kompilacji za pomocą GCC, prostej obróbce zdjęć z użyciem IrfanView, czynnościach projektowych związanych z grafiką 3D w Blenderze, renderingu w POV-Ray, benchmarkach Cloud Gate oraz Fire Strike Ultra z 3DMarka, a także szyfrowaniu z wykorzystaniem algorytmów innych niż AES (ponownie kłania się brak instrukcji). Nie najgorzej wypadły także testy w grach, gdzie średnia strata do Bulldozera wyniosła zaledwie 5,5% i ponownie udało się go kilka razy pokonać. Szczerze powiedziawszy, spodziewałem się, że będzie gorzej. Można się więc zastanawiać, jak sprawy by się potoczyły, gdyby AMD nie poszło w moduły, tylko kontynuowało rozwój K10. Odpowiedzi oczywiście nigdy nie poznamy, ale jednak nasuwa się dość oczywisty wniosek, że z dużym prawdopodobieństwem gorzej by nie było. Na dzisiaj to wszystko, ale niedługo czekają nas kolejne emocje, w związku ze zbliżającą się premierą Zen 2. Ja już nie mogę się doczekać - a Wy?

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

 0