V Číně se rodí 64jádrový superprocesor pro HPC, používá instrukční sadu ARM

0

Před nedávnem jsme zde měli zprávy o embargu na dodávky výkonných procesorů do čínských počítačů kvůli obavám úřadů USA o národní bezpečnost (konkrétně z toho, že tato CPU budou použita pro vývoj jaderných zbraní). V tomto kontextu nepřekvapuje, že se Čína pokouší o vývoj vlastních vysoce výkonných procesorů použitelných v superpočítačích, tyto programy byly ovšem na světě už dávno předtím. Jedním z jejich výsledků je i zatím pravděpodobně nejvýkonnější procesor s instrukční sadou ARM, připravovaný do výroby. Čip s kódovým označením „Mars“, který nyní na konferenci Hot Chips prezentovala firma Phytium, má mít 64 jader s na míru navrženou architekturou, kompatibilní se sadou ARMv8.

Čip je to na poměry architektury ARM obří, ba přímo mamutí. Používá 28nm proces TSMC a jeho „zastavěná plocha“ činí 640 mm² (což je podstatně více než u historicky největších čipů GPU); zespodu má 3000 kontaktů. TDP ale odpovídá standardním CPU, je stanoveno na 120 W při napájecím napětí jader 0,9 V, cílová frekvence je 2,0 GHz.

64bitový procesor Mars firmy Phytium (slajdy z Hot Chips 27, 2015)
64bitový procesor Mars firmy Phytium (slajdy z Hot Chips 27, 2015)

 

Procesorová architektura Xiaomi

Jádra použitá v čipu Mars jsou navržená na míru, nikoliv přímo licencovaná od ARMu. Phytium jim z nějakého důvodu říká „Xiaomi“, zda je zde nějaká souvislost s čínskou značkou mobilů, ale není jasné. Tato jádra jsou vždy sdružena do bloků po osmi, přičemž čtveřice sdílí 2 MB L2 cache (celý čip jí má dohromady 32 MB), zatímco L1 o kapacitě 32/32 KB pro data/instrukce jsou vyhrazené. Bloky jader by měly používat topologii typu mesh, kdy blok osmi jader tvoří tzv. panel, a paměti cache všech jader jsou koherentní.

64bitový procesor Mars firmy Phytium (slajdy z Hot Chips 27, 2015)
Vizualizace jednoho panelu s osmi jádry (slajdy z Hot Chips 27, 2015)

L3 cache je řešená zvláštně (podobně by to ale mělo mít i IBM u Power8) – je na externích čipech, které sdružují blok L3 cache a paměťový řadič pro DDR3. Těchto čipů nazvaných CMC by mělo být k Marsu připojených osm a celkově dávají šestnáct kanálů DDR3 na efektivním taktu 1600 MHz (celková teoretická propustnost 204,8 GB/s) a 128 MB L3 cache. Kromě toho má Mars také dvojí rozhraní PCI Express 3.0 ×16 pro periférie.

64bitový procesor Mars firmy Phytium (slajdy z Hot Chips 27, 2015)
Mars má řadiče DDR3 a bloky L3 cache v osmi externích čipech CMC (slajdy z Hot Chips 27, 2015)

 

Samotné jádro Xiaomi má architekturu typu „out of order“, stavěnou na zpracování 4 instrukcí v jednom taktu (to platí pro dekodéry, fetch a dispatch). Jádro by mělo dle schématu mít čtyři ALU, z nichž jedna je sdílená pro zpracovávání větvení. FPU jsou v procesoru dvě s podporou FMA a zároveň tyto pipeline počítají i instrukce typu SIMD, které by měly mít šířku vektoru 128 bitů. Jádro by mělo mít i cosi jako instrukční L0 cache – buffer, do nějž se vejde 32 instrukcí a díky němuž lze například při počítání smyček přeskočit dekódování instrukcí. Reorder buffer procesoru má kapacitu 160 instrukcí (takto dlouhý výsek kódu má procesor k dispozici pro přehazování instrukcí, optimalizaci a rozdělení instrukcí jednotlivým jednotkám). Jádro má k dispozici 192 fyzických registrů.

64bitový procesor Mars firmy Phytium (slajdy z Hot Chips 27, 2015)
64bitový procesor Mars firmy Phytium: schéma jádra (slajdy z Hot Chips 27, 2015)

Procesor má podle prezentace firmy Phytium maximální teoretický výkon 512 GFLOPS (k tomu se – jestli se nepletu – došlo takto: 64 jader × takt 2,0 GHz × čtyři operace FP64 za takt díky dvěma 128bitovým jednotkám SIMD). Procesor s takto vysokým počtem jader bude asi náchylný na nedostatečně efektivní vytížení, nicméně pro oblast HPC s velkým paralelismem by mohl mít úctyhodný výkon.

 

 

Mars a Země

Čipy Mars jsou určené hlavně pro lokální čínskou potřebu, ovšem podle zástupců firmy není nereálný ani export, případní zájemci ze západu mají údajně dveře otevřené. Phytium mimochodem nepracuje jen na těchto čipech pro superpočítače. Zároveň má údajně ve vývoji procesor označený „Earth“ pro službu v konvenčních serverech v datacentrech, zaměřený na vysokou energetickou efektivitu, nízkou cenu a co nejvyšší hustotu integrace serverových instancí. Oproti tomu Mars se zaměřuje na vysoký výkon, propustnost a kapacitu pamětí pro náročnější použití, cílem je zřejmě až tzv. segment „big iron“. Bližší podrobnosti k čipu Earth ale na Hot Chips nepadly.

Kdy by měly procesory Mars jít do výroby a poté na trh, jsem z dostupných informací zatím nikde nevyčetl – až na to, že tzv. tape-out je teprve čeká, jsou tedy více než rok vzdálené. Tento program jimi ovšem nekončí, Phytium je naopak považuje jen za první krok v linii vysoce výkonných CPU. V horizontu pár let má být Mars nahrazen další generací na modernějším výrobním procesu, která přinese také vylepšenou architekturu. Ta má mít agresivnější predikci větvení, údajně by mělo jít i o širší jádro, podporující již též SMT (zpracovávání více vláken naráz). Následník Marsu má mít také výkonnější paměťový subsystém a vylepšené funkce pro spolehlivost (tzv. „RAS“).

Zdroje: The Platform, ComputerBase