První ARMv9 jádra Cortex jsou tu. Nové malé jádro je jako Bulldozer

Cortex-X2: nejvýkonnější architektura od ARMu

ARM letos oznámil novou generaci instrukční sady: ARMv9, s níž přichází třeba nové instrukce SVE. Teď tyto novinky přechází z papíru do reality: firma odhalila první CPU jádra, která přinesou ARMv9 do mobilů, ale asi i PC: Cortex-A710, dále vůbec nejvýkonnější jádro Cortex-X2 a také po letech nové úsporné malé jádro Cortex-A510. To je hodně zajímavé, Arm totiž sáhl po řešení se sdílenou FPU připomínajícím CMT architekturu AMD Bulldozer.

Před nedávnem ARM představoval podrobnosti své serverové architektury Neoverse V1 a částečně o generaci novější Neoverse N2. Právě jádro Neoverse N2 bylo zajímavé tím, že jde o první oznámenou architekturu již přinášející verzi instrukční sady ARMv9. ARM sdělil, že serverové jádro N2 je derivátem jádra řady Cortex pro mobilní zařízení, notebooky a PC, které se teprve chystá k uvedení a také tedy bude prvním ARM jádrem s podporou ARMv9 pro široké masy uživatelů.

Tato první ARMv9 jádra „pro běžný lid“ teď firma ARM oficiálně odhalila, a jsou ve skutečnosti rovnou tři: základní „prostřední jádro“ Cortex-A710, které navazuje na linii A76, A77 a A78. Ale současně i nové nejvýkonnější jádro Cortex-X1 zaměřené na co nejvyšší jednovláknový výkon.

Do třetice pak ale přichází také nové malé úsporné jádro, Cortex-A510. A to je také velmi zajímavé. Jednak ARM tuto linii už velmi dlouho neaktualizoval a Cortex-A55 už byl poněkud vousatý. Navíc je ale Cortex-A510 zcela nová architektura a do této kategorie CPU architektur přináší velké změny. Některé paradoxně budete znát z minulosti, a to z procesorů, které byste si v tomto kontextu asi nepředstavili.

Cortex-X2: zatím nejvýkonnější jádro od ARMu

Výkonné jádro Cortex-X2 navazuje na architekturu Cortex-X1 a má stejnou úlohu, tedy zajistit co nejvyšší jednovláknový výkon. Důležité je, že ARM u svých jader Cortex řady A vždy mířil na to, aby byl výkon vybalancovaný s dobrou energetickou efektivitou a zároveň také jádro nebylo příliš velké co do plochy čipu. Cortex-X2 je navržen tak, že jde za vyšším výkonem i tam, kde už to znamená, že má nižší energetickou efektivitu (spotřeba Cortexu X1 v mobilech zdá se dosahovala až 3,5–5,0 W) i menší efektivitu ve vztahu mezi výkonem a plochou zabranou na čipu.

V mobilech proto toto jádro někdy může být třeba jen jedno, doplněné Cortexy-A710. ARM nicméně zmiňuje, že by toto jádro mohlo být používáno v „zařízeních s větší obrazovkou“, což by mohlo naznačovat, že by se mohly třeba od Qualcommu objevit čipy s touto architekturou pro notebooky, kde by už snad těchto jader mohl najednou figurovat více.

První ARMv9, bez 32 bitů

Zdá se, že Cortex-X2 není úplně zbrusu nová architektura, spíše jde o evoluční zlepšení stavěné na základě předchozího X1 (za návrhem stojí tým ARMu v texaském Austinu). Přidání podpory pro všechny funkce ARMv9 ale samozřejmě vyžadovalo značné přepracování všeho možného. ARM uvádí, že podnikl mnoho cílených úprav ve všech částech.

Další velká změna je, že z jádra byla odstraněna všechna podpora pro spouštění 32bitových aplikací, toto jádro už tedy podporuje jen a pouze 64bitový režim, což patrně zjednodušilo návrh a ušetřilo nějaké tranzistory.

Důraz na predikci větvení

ARM uvádí, že by měl být výrazně zlepšený prediktor větvení, který ARM považuje za klíčový pro efektivitu. Prediktor pracuje s větším objemem informací, má větší efektivní kapacitu Branch Target Bufferu. Úspěšnost má být znatelně lepší než u starší generace, počet chybně odhadnutých větvení na určitý počet instrukcí vykonaného kódu má být proti X1 výrazně nižší.

Predikce větvení také běží samostatně odděleně od kroku Fetch, což ovšem už měly předchozí generace. Tento přístup má za cíl vykrývat „bubliny“ ve využití výpočetních jednotek zaviněné chybnou predikcí. Cílem je, aby tyto části frontendu mohly běžet napřed před zbytkem zpracování a v případě chybné predikce měly pár cyklů navíc k tomu, aby začaly zpracovávat správnou cestu kódem, než dalším fázím zpracování dojde práce.

Zajímavé je, že ARM zredukoval hloubku celé pipeline z 11 na 10 cyklů – jeden stupeň vykonávání byl eliminován ve fázi dispatch, která dřív zabrala dva cykly. Přitom jádra Cortex již teď měla na dnešní poměry spíš dost krátkou pipeline, pročež také nedosahují frekvence výrazně přes 3 GHz. Ovšem zkrácení pipeline zkracuje postih za nesprávně odhadnuté větvení a tím zlepšuje přímo IPC.

Podle ARMu byl zisk ve výkonu dost velký na to, aby ospravedlnil poměrně velký dopad na plochu čipu a také dalekosáhlé redesignování jádra, které si toto vyžádalo. Přes zkrácení pipeline údajně nemá utrpět frekvenční potenciál jádra, má tedy zhruba běhat na stejných taktech jako X1, nebo to alespoň ARM slibuje.

Hlubší fronty

ARM zdá se nepřidal výpočetní jednotky ani nerozšířil jádro na zpracování více operací za cyklus, (počet ALU tak zůstal na čtyřech, pro ty, kdo sledují tento parametr). Out-of-order fronty ale byly naopak posíleny, reorder buffer se z 224 položek zvětšil na 288 položek, a je tedy už větší než u Zenu 3 (ten má na svůj výkon značně malou hloubku 256 položek, zatímco Ice Lake/Tiger Lake od Intelu 352). Efektivně je hloubka i lepší, protože jádro prý také má zlepšené schopnosti spojovat operace dohromady, díky čemuž pak zabírají jen jednu položku místo dvou.

Tip: Detaily Zenu 3: rozbor změn a vylepšení nové CPU architektury AMD

Prohloubené jsou i různé fronty Load/Store části, tedy buffery, do nichž se řadí operace čtení a zapisování do do paměti (cache). Mají být až o 33% větší, takže jádro může naráz zpracovávat víc těchto operací a tím je lépe optimalizovat. L1 TLB pro data byl zvětšen ze 40 na 48 položek. Prodloužení různých těchto front obecně zvyšuje IPC. Macro-Op cache zůstala stejná a má 3000 položek.

Dále také mají být zdokonalené prefetchery, včetně vylepšeného temporálního prefetcheru, který měly už jádra X1 a A78 a byl víceméně unikátní. Stejně jako prediktory větvení je prefetch oblast, ve které se dělají neustále inkrementální evoluční zlepšení a současně jde o vysoce důležitý faktor ve zlepšování IPC. Podobně jako predikce větvení totiž prefetch může rozhodovat o tom, jestli jádro bude mít možnost vytížit své jednotky, nebo bude přešlapovat naprázdno při čekání na data a tím mít nízký výkon.

SVE a SVE 2 konečně

Spolu s ARMv9 také je konečně podporována nová architektura SIMD instrukcí v jednotce FPU/SIMD: SVE a SVE 2 s flexibilní šířkou vektoru. Ukazuje se ale, že s tou flexibilitou to je lehce omezenější, než se možná čekalo. Na první pohled by se mohlo zdát, že flexibilní šířka elegantně řeší problém s big.LITTLE procesory, kde malá jádra nemohou mít velkou šířku vektoru, ale velká ano (osobně jsem si to aspoň tak představoval).

Ovšem pokud je toto možné, zatím tak daleko ARM nedospěl, právě asi kvůli kompatibilitě s malými jádry má Cortex-X2 šířku jednotek, ale i zpracovávaného vektoru SVE jen 128 bitů, tedy stejnou, jako měly jednotky Neon v Cortexu X1 (ve světě x86 procesorů je to srovnatelné s instrukcemi SSE*, AVX* jsou již 256bitové). FPU/SIMD pipeline jsou čtyři, takže hrubý výpočetní výkon se nezměnil.

Kde se výkon zlepší, bude v AI aplikacích běžících na těchto SIMD jednotkách. Jádro bude podporovat 16bitové hodnoty bfloat16 a 8bitové INT8, což má umožnit až dvojnásobný výkon v AI aplikacích. Ale ty samozřejmě musí být překompilované a/nebo přepsané, aby používaly patřičné nové instrukce.

Výsledné zvýšení výkonu na 1 MHz

Jak se tedy všechny tyto změny podepsaly na výkonu jádra? Zdá se, že Cortex-X2 nebude nějaký velký skok, kde by se IPC zlepšilo skokově – toto možná dodá příští generace, ale tato první řada ARMv9 je konzervativnější. ARM uvádí, že Cortex-A2 má mít až o 16 % vyšší výkon při stejné frekvenci, což znamená o 16 % lepší IPC.

Je to ovšem lehce vylepšené srovnání, protože jde o predikci pro jádra se stejnou 64KB L1 a 1MB L2 cache, ale pro Cortex-X2 ARM použil 8MB L3 cache, zatímco pro Cortex-X1 jen 4MB. Toto může samo dělat několikaprocentní zlepšení, takže reálný nárůst IPC je asi nižší a marketing si tu trošku zamanipuloval (ovšem přiznaně). Vedle toho ARM slibuje také ten až 2× vyšší výkon v AI, což je onou podporou bfloat16/INT8.

ARM také ukázal tento graf, podle kterého bude Cortex-X2 svůj vyšší výkon dosahovat také za cenu určitého zvýšení spotřeby, pokud by obě jádra byla na stejném procesu.

V mobilních zařízeních tedy může nastat problém, kdy stále 5nm Cortexy-X2 nebudou schopné dosáhnout proklamovaný výkon, protože spotřeba (problematická už u Cortexu-X1 v 5nm Qualcomm Snapdragonu 888 a Samsung Exynosu 2100) bude bránit v delším udržení maximální frekvence. V noteboocích by ale na vyšší příkon (pořád se asi bavíme jen třeba o 6–8 W) výměnou za lepší výkon asi celkem schoval a vyplatil.

Článek pokračuje na další straně.


  •  
  •  
  •  
Flattr this!

Nvidia uvádí procesor Grace CPU Superchip. 144 jader, 1TB/s RAM

V úterý na konferenci GTC 2022 představila Nvidia novou architekturu GPU Hopper a na ní založené 4nm akcelerátory H100 pro AI úlohy a servery. Ale nebylo to jediné, co firma prezentovala. Současně oznámila také své první výkonné procesory s kódovým označením Grace, kterým také říká „Grace CPU Superchip“. Má jít o procesor konkurující ve výkonu těm nejrychlejším Xeonům a Epycům, dost se ale také podobá M1 Ultra od Apple. Celý článok „Nvidia uvádí procesor Grace CPU Superchip. 144 jader, 1TB/s RAM“ »

  •  
  •  
  •  

Dosud nejsilnější čip Apple: M1 Ultra má 20 jader, výkon RTX 3090?

Apple opět posunul výkon, který mohou nabídnout jeho vlastní procesory ARM, do nové kategorie. Po procesoru Apple M1 a jeho výkonnějších verzích M1 Pro a M1 Max firma uvádí ještě výkonnější model. Novinka označená M1 Ultra je prvním z těchto čipů, který je čistě desktopový. I když to přesněji řečeno není jeden čip, ale čiplety, spojené transparentně do jednoho CPU a (vůbec poprvé) také GPU. Celý článok „Dosud nejsilnější čip Apple: M1 Ultra má 20 jader, výkon RTX 3090?“ »

  •  
  •  
  •  

Nvidia nekoupí ARM. Smlouva už je oficiálně zrušená, bude IPO

Není to rána z čistého nebe, protože nad tímto plánem byly značné otazníky a to, že tyto otazníky byly tak velké, až zatarasily cestu, už neoficiálně prosáklo minulý měsíc. Teď už je to ale opravdu potvrzené: Nvidia byla nucená vzdát svou ambici o ovládnutí firmy ARM, firmu vyvíjející a licencující nejrozšířenější architekturu CPU, na níž stojí mimo jiné všechna mobilní zařízení. Ta díky tomu zůstane neutrální a nezávislá. Celý článok „Nvidia nekoupí ARM. Smlouva už je oficiálně zrušená, bude IPO“ »

  •  
  •  
  •  

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *