Aktualność
Mateusz Brzostek, Środa, 7 listopada 2018, 03:44
Tagi: 7 nm, amd, epyc, rome, tsmc, zen

AMD zaprezentowało pierwszy procesor x86 wykonany w litografii klasy 7 nm: serwerowy układ Epyc drugiej generacji, który trafi do sprzedaży w przyszłym roku.

Rome: 64 rdzenie, 8 kanałów DDR4, PCI-E 4.0

Procesory serwerowe z architekturą Zen 2 będą sprzedawane pod marką Epyc. Są kompatybilne z istniejącą infrastrukturą – Epyc 2. generacji pasuje do tej samej podstawki i będzie działać w istniejących płytach głównych (po aktualizacji firmware). Nowe Epyc mają kontroler PCI Express 4.0 – to pierwsze serwerowe procesory x86 oferujące tak szybkie łącza PCI-E (wcześniej PCI-E 4.0 było dostępne w procesorach IBM Power9). Ta część funkcjonalności będzie w większości przypadków wymagała zastosowania nowej płyty głównej; w większości istniejących serwerów Epyc 2. generacji będzie oferować PCI-E 3.0.

Najwyższe modele Epyc 2. generacji będą miały 64 rdzenie (128 wątków) - dwa razy więcej niż obecne serwerowe procesory AMD. Ze względu na kompatybilność z istniejącą podstawką zachowano 8-kanałowy kontroler pamięci oraz 128 linii PCI-E (z których 64 może zostać użyte jako łącze z drugim procesorem).

Makroarchitektura: jeden procesor w kilku częściach

Procesory Epyc następnej generacji będą miały modułową, heterogeniczną budowę. Epyc pierwszej generacji składały się z czterech identycznych jąder krzemowych połączonych w jednej obudowie za pomocą Infinity Fabric. Rdzenie, interfejsy pamięci i I/O były rozdzielone po równo między wszystkie jądra. Taki projekt był naszym zdaniem głównym źródłem sukcesu finansowego, jaki architektura Zen przyniosła AMD: wyprodukowano tylko jeden rodzaj jądra krzemowego, który można było zastosować zarówno do procesorów desktopowych o małej liczbie rdzeni, do procesorów Threadripper o średniej liczbie rdzeni oraz do megardzeniowych procesorów serwerowych. Takie podejście pozwoliło wiele zaoszczędzić zarówno na kosztach rozpoczęcia produkcji jądra (maski litograficzne, czas i zasoby potrzebne na „rozpędzenie” uzysku do komercyjnie zyskownego poziomu) jak i na sortowaniu procesorów: uzysk w produkcji małych układów jest znacznie lepszy, niż jednego o dużej powierzchni.

W procesorach o architekturze Zen 2 funkcje procesora zostały rozdzielone na dwa rodzaje jąder krzemowych, w dodatku wyprodukowanych w różnych procesach technologicznych. Rdzenie x86 i najszybsze, najbliższe CPU poziomy pamięci podręcznej znajdują się w osobnych jądrach wykonanych w procesie technologicznym 7 nm. Elementy nie poddające się łatwo zmniejszaniu wraz z aktualizacją procesu technologicznego, czyli interfejsy wejścia/wyjścia oraz kontroler pamięci zostały wydzielone i umieszczone w osobnym jądrze wykonanym w technice 14 nm w fabrykach GlobalFoundries (tę informację potwierdziliśmy u reprezentantów AMD). W jednym procesorze Rome jest dziewięć jąder. Warto zauważyć, że jeśli AMD zechce oferować modele Epyc 2. generacji z mniejszą liczbą rdzeni, wystarczy, że zamontuje w jednej obudowie dokładnie tyle jąder obliczeniowych, ile trzeba, oraz jedno jądro IO. Do każdego Epyc pierwszej generacji, nawet ośmiordzeniowego, potrzebne są cztery choćby częściowo sprawne jądra – dopiero cztery łącznie mają osiem kanałów pamięci i 128 linii PCI-E.

Przedstawiony powyżej schemat blokowy dość wiernie reprezentuje organizację procesora Rome – oprócz tego, że osiem jąder z rdzeniami x86 przedstawiono w dwóch blokach („chiplets”). Osiem łącz Infinity Fabric (oznaczone symbolem ∞) łączy jądra obliczeniowe z centralnym jądrem IO. Dwa bloki oznaczone IO to interfejsy PCI-E udostępniające w sumie 128 linii. Połowa z nich może być wykorzystana jako cztery łącza Infinity Fabric prowadzące do drugiego procesora; wtedy jeden procesor udostępnia 64 linie PCI-E, tak samo jak w procesorach Epyc pierwszej generacji. Ośmiokanałowy kontroler pamięci jest również odpowiednikiem tego z Naples, ale jest jednolity, a nie rozdzielony pomiędzy cztery jądra jak w Epyc pierwszej generacji. Cała pula pamięci podłączonej do jednego procesora jest jednolita: dostęp z każdego rdzenia do każdego adresu w pamięci odbywa się z taką samą przepustowością i opóźnieniem. Taka organizacja pamięci jest wielką przewagą nad procesorami Epyc pierwszej generacji. Dopiero dwa procesory tworzą konfigurację NUMA, a maszyna z jedną podstawką jest pod względem dostępu do pamięci bardzo bliska jednolitym maszynom z procesorami Intela (pomijamy nadchodzące układy Cascade Lake AP, które będą w ramach jednej podstawki mieć pamięć zorganizowaną w NUMA).

W tak zorganizowanym procesorze pula pamięci jest jednolita, a maksymalna przepustowość dostępna dla jednego wątku – największa. Jednak w procesorze Epyc pierwszej generacji z punktu widzenia jednego rdzenia 1/4 puli pamięci jest dostępna lokalnie, przez kontroler pamięci w tym samym jądrze, a 3/4 puli pamięci „w odległości” jednego łącza Infinity Fabric. W Epyc drugiej generacji, ponieważ jądra obliczeniowe nie mają żadnej części kontrolera pamięci, cała pula pamięci jest dostępna w odległości jednego łącza IF. Nie wiemy, jakie zmiany poczyniono w łączy Infinity Fabric, ale zapewniono nas, że jest ono usprawnione w stosunku do tego z Epyc 1. generacji. W zależności od tego, jak bardzo jest usprawnione, opóźnienie w dostępie do pamięci w Epyc 2. generacji może być dłuższe, niż opóźnienie w dostępie do lokalnej pamięci (najlepszy przypadek) w Epyc 1. generacji.

Jądro IO zawiera również dodatkową pamięć podręczną – niestety AMD nie ujawniło jeszcze żadnych szczegółów na ten temat. Nie wiemy nic o jej pojemności ani organizacji: czy ta pamięć będzie wspólna dla wszystkich rdzeni, albo czy będzie pełnić rolę pamięci memory-side (przyspieszającej wszystkie operacje na pamięci, również pomiedzy RAM-em a przestrzenią IO; takie rozwiązanie mogłoby być przydatne w zastosowaniach z wieloma GPU) czy CPU-side (przyspieszającej tylko transfery pomiedzy rdzeniami x86 a RAM-em).

Podzielenie procesora na jądra o różnej funkcjonalności to wizja prezentowana od wielu lat w branży półprzewodnikowej. Również Intel prezentował ją na jednej ze swoich konferencji poświęconych możliwościom produkcyjnym. O ile wiemy, jeszcze żaden producent wysoko zintegrowanych układów nie zdecydował się na wykorzystanie tej techniki w praktyce. Do tej pory łączono w taki sposób wyłącznie jednakowe jądra (np. układy FPGA Xilinx) lub układy, które funkcjonują niezależnie od siebie (np. CPU i pamięć albo GPU i pamięć). Podzielenie procesora na funkcje obliczeniowe i funkcje IO to oznaka tego, że AMD nie boi się podejmować ryzykownych kroków jako pierwsza firma w branży. 

Proces technologiczny 7 nm

Najważniejsza część nowych procesorów Epyc jest produkowana w fabrykach TSMC na Tajwanie, w procesie technologicznym klasy 7 nm, wykorzystującym najnowsze zdobycze „tradycyjnej” litografii (z naświetlaniem laserem o długości fali 193 nm). Do tej pory dwa procesory wyprodukowane w tej technice są dostępne w handlu: Apple A12 oraz Huawei Kirin 980. Nie wiemy, czy TSMC zaoferowało AMD specjalną wersję procesu produkcyjnego inną niż ta, z której korzystają Apple i Huawei. Jak twierdzi AMD, ten proces produkcyjny zapewnia 2 razy większą gęstość upakowania tranzystorów niż GlobalFoundries 14 nm. Można również osiągnąć o 25% wyższe taktowanie (przy tym samym zużyciu energii) lub 50% niższe zużycie energii (przy tym samym taktowaniu). W procesorach Epyc AMD wybrało oszczędność energii: efektywność energetyczna o wiele bardziej liczy się w świecie serwerowym, i była konieczna, żeby zmieścić dwa razy więcej rdzeni w takim samym budżecie energetycznym.

Przedstawiciele AMD podczas konferencji wielokrotnie podkreślali znaczenie litografii 7 nm dla dalszych planów firmy. Wspomniano też, że z fabryk TSMC wyjechały już więcej niż dwa układy wykonane w tej technice.

Mikroarchitektura Zen 2

Rdzenie Zen 2 są ewolucyjnym rozwinięciem architektury Zen. Najważniejszą zmianą jest znaczne rozbudowanie części odpowiedzialnej za obliczenia wektorowe oraz na liczbach zmiennoprzecinkowych. Przepustowość głównej ścieżki danych została podwojona: procesor może w jednym cyklu zegara pobrać i zapisać do pamięci podręcznej dwa razy więcej danych (256 bitów na cykl).

Podwojono również szerokość jednostek wykonawczych, które moga teraz wykonywać dwie 128-bitowe operacje jednocześnie lub jedną 256-bitową operację w jednym cyklu zegara. Jednocześnie front end procesora może wydać do wykonania więcej operacji zmiennoprzecinkowych w jednym cyklu (w Zen: do 4 mikrooperacji; nie podano, o ile więcej w Zen 2), może też zakończyć i zapisać wynik większej liczby operacji. To usprawnienie powiększy wydajność zmiennoprzecinkową również w programach nie wykorzystujących szerokich wektorowych instrukcji – na przykład w niektórych procedurach używanych w grach.

Front end procesora (część odpowiedzialna za dekodowanie, przekolejkowywanie i rozdzielanie instrukcji pomiędzy jednostki wykonawcze) został usprawniony. Nie podano zbyt wielu szczegółów: wiemy tylko, że ulepszono układ przewidywania skoków i układ pobrania z wyprzedzeniem oraz powiększono pamięć mikrooperacji (która pozwala pominąć dekodowanie rozkazu, jeśli identyczna operacja była niedawno wykonywana). Wydaje się, że te zmiany pozwolą lepiej ukryć opóźnienie w dostępie do pamięci podręcznej.

Zestaw instrukcji Zen 2 jest niemal identyczny, co w Zen. Mimo poszerzenia jednostek zmiennoprzecinkowych Zen 2 nie wykonuje instrukcji AVX-512; 256-bitowe instrukcje AVX2 będą wykonywane w najlepszym przypadku 2 razy szybciej, niż w Zen (jedna w cyklu zegara). Dodano również dwie instrukcje umożliwiające zapisanie linijki z pamięci podręcznej do RAM-u oraz instrukcję RDPID umożliwiającą zidentyfikowanie konkretnego rdzenia w ramach wielordzeniowego procesora – te same instrukcje będą również dostępne w procesorach Ice Lake Intela (nadchodzących... nikt nie wie, kiedy).

Bezpieczeństwo

Podobnie jak dotychczasowe procesory AMD, Epyc 2. generacji są niewrażliwe na niektóre typy ataków side-channel: Meltdown oraz L1TF. Jak twierdzą przedstawiciele AMD, Zen 2 zawiera pewne usprawnienia sprzętowe utrudniajace ataki Spectre oraz ataki na SMT – niestety nie podano żadnych szczegółów. O ile nam wiadomo, nie zaprezentowano jeszcze skutecznego ataku na procesor Zen związanego z techniką SMT – usprawnienia w Zen 2 powinny sprawić, że stanie się najbezpieczniejszą nowoczesną architekturą x86 (choć oczywiście nie ma mowy o całkowitej niewrażliwości na ataki side channel, ani na inne ataki sprzętowe). 

W Epyc 2. generacji rozwinięto technikę szyfrowania pamięci i maszyn wirtualnych (TSME i SVE): nowe procesory mogą gospodarować większą liczbą kluczy kryptograficznych jednocześnie, co pozwala na stworzenie większej liczby niezależnie zaszyfrowanych, odizolowanych maszyn wirtualnych na jednym procesorze.

Oczekiwana wydajność

Jak zapewnia AMD, jeden 64-rdzeniowy procesor Epyc drugiej generacji oferuje większą wydajność, niż dwa najlepsze dostępne dziś procesory Intela (Xeon Platinum 8180) lub dwa najlepsze procesory Epyc pierwszej generacji (Epyc 7601). Zademonstrowano na żywo działanie referencyjnej maszyny AMD o nazwie roboczej Daytona w benchmarku c-ray.

Maszyna testowa z procesorem Epyc drugiej generacji. Ta sama płyta główna w serwerowej obudowie 2U tworzą referencyjną platformę AMD Daytona.

To dość prosty test wydajności w śledzeniu promieni wykorzystujący głównie instrukcje zmiennoprzecinkowe i instrukcje wektorowe AVX (ale nie AVX-512); zestaw danych jest bardzo mały i mieści się w pamięci podręcznej, a sam benchmark skaluje się niemal bez ograniczeń wraz z liczbą rdzeni.

Jeden Epyc drugiej generacji ukończył renderowanie szybciej, niż dwa Epyc 7601 lub dwa Xeony Platinum 8180. Zapewniono nas, że optymalizacje oprogramowania oraz przyspieszone taktowanie dadzą ostatecznej wersji Epyc drugiej generacji jeszcze wyższą wydajność.

Oczywiście do wyników testów przedstawionych przez producentów jak zawsze podchodzimy z rezerwą – szczególnie, że praktyczne programy wykorzystujące mocno instrukcje wektorowe wymagają również wysokiej przepustowości pamięci, a c-ray zupełnie ignoruje ten aspekt systemu.

Czego jeszcze nie wiemy?

Zapowiedź procesorów Epyc 2. generacji rodzi bardzo wiele pytań; na większość z nich przedstawiciele AMD nie chcą jeszcze odpowiedzieć. Wśród najważniejszych nieznanych szczegółów technicznych są:

  • organizacja pamięci podręcznej w Rome, szczególnie dodatkowa pamięć w jądrze IO
  • organizacja rdzeni wewnątrz jądra obliczeniowego – nie wiemy, czy wciąż są połączone w bloki CCX po cztery rdzenie ze wspólną pamięcią podręczną
  • prędkość taktowania, liczba modeli i zakres zróżnicowania procesorów Epyc 2. generacji
  • data wprowadzenia do sprzedaży – znamy tylko rok (2019)

Z kolei makroarchitektura Zen 2 rodzi wiele pytań dotyczących przyszłych procesorów desktopowych z rdzeniami Zen 2. AMD zapewne znów zdecyduje się na zaspokojenie potrzeb wielu segmentów rynku jak najmniejszą liczbą różnych jąder – w ten sposób zgarnie największe korzyści z modularnej natury Zen 2. Jeśli jądra obliczeniowe takie same jak w Rome zostaną wykorzystane w desktopowych procesorach (co nie jest pewne), to prawdopodobnie będzie musiało im towarzyszyć nowe, inne jądro IO. To może mieć duży wpływ na dostep do pamięci w kolejnej generacji procesorów Ryzen.

Źródło: AMD, własne
Ocena aktualności:
Ocen: 9
Zaloguj się, by móc oceniać
adul (2018.11.07, 03:49)
Ocena: 24

0%
Widać AdotedTV miał dobre źródła.
DarkHoly (2018.11.07, 04:48)
Ocena: 34

0%
Intel z swoim 14nm+++++++++ może mieć drobny problem w 2019 roku. Tańsze, bardziej efektywne energetycznie i możliwe że z podobnym IPC wielordzeniowe kolosy raczej dobrze dadzą mu po kieszeni. AMD już ma niecałe 14% ogólnego rynku i raczej ZEN jeszcze nie powiedział ostatniego słowa.
Edytowane przez autora (2018.11.07, 04:49)
Promilus1984 (2018.11.07, 05:11)
Ocena: 16

0%
Nom... AMD pojechało teraz trochę ;) Tylko kurka podejrzewam, że w desktopie jednak tego 'L4' nie zobaczymy :/
poprostujakub (2018.11.07, 06:37)
Ocena: 1

0%
Co do pierwszego procesora z 'rozbitym' rdzeniem - układy Arrandale miały kontroler pamięci w osobnym kawałku krzemu.
Promilus1984 (2018.11.07, 07:02)
Ocena: 3

0%
@up - chyba bardziej clarkdale (desktop, pierwszy), ale wynikało to z tego, że w tym osobnym kawałku krzemu było igp. Arrandale to wersja mobilna :)
Edytowane przez autora (2018.11.07, 07:03)
Trepcia (2018.11.07, 07:35)
Ocena: 16

0%
Ciekawe jakie będą nowe APU. Czy tylko ja czekam na te układy? :D
decorator12 (2018.11.07, 07:38)
Ocena: 10

0%
25% wyzsze takowane (czyli turbo do ok 5Ghz) i do tego 13-15% IPC.
Hype traum!
mbrzostek (2018.11.07, 07:39)

0%
poprostujakub @ 2018.11.07 06:37  Post: 1173483
Co do pierwszego procesora z 'rozbitym' rdzeniem - układy Arrandale miały kontroler pamięci w osobnym kawałku krzemu.

Rzeczywiście, żadna część tego układu nie jest samodzielnie funkcjonalna, więc powinienem je zaklasyfikować obok AMD Rome. Chociaż Clarkdale ma chyba więcej podobieństw do systemów z FSB i kontrolerem pamięci w mostku północnym...
Sasilton (2018.11.07, 08:11)
Ocena: 22

0%
AMD 10 lat za Intelem :D
Pentium D z 2006 roku

oczywiście to żart
Edytowane przez autora (2018.11.07, 08:11)
Trepcia (2018.11.07, 08:16)
Ocena: 28

0%
Sasilton @ 2018.11.07 08:11  Post: 1173497
AMD 10 lat za Intelem :D
Pentium D z 2006 roku

oczywiście to żart


Intel robił sklejki zanim to stało się modne!
Zaloguj się, by móc komentować
Aktualności
Rusza kolejna edycja największego plebiscytu technologicznego w Polsce – Tech Awards 2018, który organizuje nasza redakcja wspólnie z Komputer Świat i Verdykt.pl. 47
Pierwsze takie chipy w pełni zgodne ze standardem JEDEC. 0
Smartfon może być dopiero początkiem. 3
Długie oczekiwanie ma zostać w końcu nagrodzone. 16
Wzrost będzie, ale w specyficznych zastosowaniach. 27
Red Dead Redemption 2 kontra „exy” Sony. 3
Posiadacze GeForce’ów RTX w końcu się doczekali. 35
Pakiet z optymalizacjami dla trzech dużych produkcji. 5
To pierwszy raz, kiedy firma zrobi coś takiego. 10
Długie oczekiwanie ma zostać w końcu nagrodzone. 16
Odpowiednik GeForce’a RTX 2070 na rynek profesjonalny. 4
Jasna deklaracja Phila Spencera. 19
Odświeżony projekt i funkcje dla wymagających. 7
Aktualności spokrewnione
Artykuły spokrewnione
Facebook
Ostatnio komentowane