ARM uvádí ARMv9 jádra: Cortex-X2 a A710, nové malé jádro Cortex-A510 je jako Bulldozer

26. 5. 2021

Sdílet

 Autor: ARM
ARM vydal nová jádra Cortex, první s podporou ARMv9 a SVE. Rozebrali jsme jejich architekturu a výkon, který s nimi ARM slibuje.

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: nejvýkonnější architektura od ARMu

Výkonné jádro Cortex-X2 navazuje na architekturu Cortex-X1 (podrobnosti o ní najdete zde) 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.

Tip: ARM uvádí novou generaci CPU architektury. ARMv9 má SVE, SVE2 a bezpečnostní novinky

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.

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 888Samsung 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ě.

Galerie: Architektura ARM Cortex-X2

Cortex-A710: efektivní prostřední jádro

To, že potřebu co nejvyššího výkonu nyní bude vykrývat jádro line X, využívá ARM k tomu, aby mohl prostřední jádro udělal efektivnější i za cenu trošku dosažitelného výkonu. Na loňský Cortex-A78 firma pro tuto roli navazuje jádrem označeným A710. Při přechodu na architekturu ARMv9 tedy bylo změněno značení na třímístné; ovšem jeho logika je zřejmě taková, že místo „A79“ se skočilo rovnou na „A7deset“. Mimochodem, toto by asi mělo být jádro, z nějž je odvozena serverová architektura Neoverse N2.

Vypůjčený čas pro 32bitů

Cortex-A710 tedy také podporuje architekturu ARMv9 a její novinky a také by zřejmě mělo jít o evolucí předchozího designu s různými úpravami a změnami. Proti Cortexu-X2 je tu jedna změna. Ač to u ostatních jader ARM udělal, zde neodstranil podporu pro 32bitový režim, toto jádro jako jediné z nových designů umí spouštět staré 32bitové aplikace (OS ne).

Jaký to má důvod? Zejména v Číně jsou údajně vývojáři pozadu v portování telefonních aplikací na 64bitovou architekturu a potřebují více času na přechod. Dočasně tak takové aplikace bude možné spouštět na prostředních jádrech A710, i když ostatní jádra procesoru už jejich chod neumožní.

Část vylepšení z Cortexu-X2

Cortex-A710 má přebírat vylepšení frontendu z Cortexu-X2 jako je dokonalejší predikce větvení – proti Cortexu-a78 byla kapacita Branch Target Bufferu (a také Global History Bufferu) zvětšená na dvojnásobek. Také L1 TLB (ale tentokrát instrukční, ne datový) byl zvětšen o 50 %, z 32 na 48 položek. Většina struktur by ale měla být nezměněná, zůstala také macro-OP cache pro již dekódované instrukce o 1500 položkách.

ARM ale naopak snížil propustnost macro-Op cache. Místo 6 instrukcí za cyklus už z ní může jít do dalšího zpracování maximálně 5, a stejně tak se snížila propustnost fáze dispatch (také z 6 na 5 operací/cyklus). Šířka jádra se tedy v této části naopak zúžila. Toto by mělo mít negativní efekt na IPC, ale patrně to vylepší efektivitu a spotřebu dostatečně na to, aby se to pro cílové určení jádra A710 vyplatilo udělat. ARM na oplátku u tohoto jádra také zkrátil pipeline z 11 na 10 cyklů (opět ve fázi dispatch), což by mělo IPC zase zvýšit.

Podobně jako ARM klade prioritu na efektivní frontend v predikci větvení, také jádro A710 přebírá pokroky v prefetchingu. I ten totiž dovoluje lepší využití daného počtu jednotek a tedy zlepšuje IPC, aniž by se musely posilovat samotné výpočetní prostředky, což by stálo víc tranzistorů a větší spotřebu.

Také toto jádro podporuje SVE a SVE 2 a má rovněž 128bitové SIMD pipeline. Ale proti Cortexu-X2 zřejmě jen dvě, celková teoretická výpočetní propustnost je tedy poloviční.

IPC lepší o jednociferná procenta

Arm uvádí, že při stejné frekvenci bude mít Cortex-A710 asi o 10% vyšší výkon než Cortex-A78. Ovšem reálně je asi navýšení IPC o dost nižší. ARM totiž v prezentaci opět srovnává A710 s 8MB L3 cache s Cortexem-A78 s jen 4MB L3 cache. Pokud reálně mobilní procesory skutečně nebudou mít dvojnásobně velkou L3 cache, tak bude pokrok ve výkonu nižší.

Efektivita jádra ale má být výrazně lepší než u Cortexu-A78. ARM uvádí, že pokud by se takt nového jádra snížil tak, aby mělo stejný výkon jako A78, pak bude mít až o 30 % nižší spotřebu, což je dobrý výsledek – je to pro stejný výrobní proces (i když si zase musíme odečíst faktor, kdy ve srovnáních Cortexu-A710 pomáhá větší L3 cache).

Galerie: Architektura ARM Cortex-A710

Letošní architektury nezvedají výkon tak, jako předchozí

Jak architektura X2, tak A710 tedy nepřinášejí tak vysoké nárůsty IPC a výkonu, jak možná někdo očekával. Nepotvrdila se tedy tak úplně očekávání, že ARM bude držet zběsilé tempo, s kterým se IPC Cortexů zvyšovalo v předchozích generacích a že rychle předstihne ve výkonu Intel a AMD. Na druhou stranu to může být proto, že architektury musely být výrazně upravovány pro kompatibilitu s ARMv9 a její nové součásti, pročež zbylo méně času a zdrojů na změny zvyšující výkon.

Větší skok ve výkonu by u obou těchto linií jader mohl nastat příští rok – respektive v jádrech, které ARM odhalí příští rok, ale v prodeji asi mohou být spíš až v roce 2023, tedy snad v Cortexu-X3 a A710. To totiž budou zbrusu nové architektury. Zatímco X2 a A710 jsou vývojové výhonky architektury Cortex-A76, vyvíjené týmem v Austinu (a po několika generacích už může tomuto základu docházet potenciál ke zlepšením), příští rok by mělo oboje nahrazeno úplnými novinkami, které vyvíjí pro změnu tým v Sophii (ten v Texasu začne zase pracovat na další linii, která přijde až za několik let).

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

Cortex-A510: úplná novinka v malých jádrech se starým překvapením

Zatímco X2 a A710 jsou poslední výhonky z už léta se odvíjející linie, třetí jádro je úplně nové a mělo by jít o novou architekturu, tentokrát vyvinutou týmem ARMu v Cambridge v průběhu minulých čtyř let. Také zde přišlo nové trojmístné označení, jde ovšem o následníka Cortexu-A55.

Cortex-A510 bude plnit roli malého jádra, zaměřeného na co nejnižší spotřebu a velmi malou zabranou plochu. Také toto jádro podporuje instrukční sadu ARMv9, oproti A710 je to už ale zase bez 32bitové kompatibility.

Zatímco Apple (a v budoucnu Intel) svá malá jádra staví relativně výkonná a s out-of-order architekturou, ARM zdá se toto nesdílí, nejspíš právě kvůli nárokům na energii a počet tranzistorů – tato jádra totiž musí pokrývat procesory pro levné telefony, kde je tlak na co nejnižší cenu. Cortex-A710 je proto opět in-order architektura. Ovšem ARM slibuje, že z něho přesto vymáčkl značný výkon.

Jako Bulldozer?

Největší pozdvižení na začátek. ARM pro toto úsporné in-order jádro převzal koncepci, která proslavila (ale typicky spíš negativně) architekturu AMD Bulldozer a její deriváty. Cortexy-A510 budou mít totiž jednotku SIMD/FPU sdílenou mezi dvěma jádry, čímž vzniká stavební kámen nazvaný komplex. ARM tomu říká Merged-Core architektura.

Komplex je tvořen dvěma spojenými jádry, která mají každé vlastní celočíselnou část. A to celou včetně frontendu, dekodérů a fetche, takže integrace/sdílení není tak velká jako u Bulldozeru. Ale L2 cache, L2 TLB a zejména FPU a SIMD jednotka jsou přítomné jen v jedné instanci sdílené mezi oběma polovinami komplexu. Mimo SIMD operací je takto sdílená také akcelerace šifrování.

V mobilním procesoru tak typicky místo čtyř jader A55 budete mít dva komplexy Cortex-A510, nicméně ty se budou chovat jako čtyři jádra. Architektura podle ARMu umožňuje zredukovat komplex na 100% plnohodnotné jádro tím, že v něm bude se stejnou FPU jednotkou umístěno jen jedno celočíselné jádro místo dvou. Toto ale nebude asi příliš efektivní na zabranou plochu, takže pravděpodobně nepůjde o častou implementaci.

Důvod použití sdílené FPU je asi právě snížení plochy jader. Cortex-A710 má totiž jako předchozí jádra podporu pro SVE, a to buď s dvěma 128bitovými, nebo dokonce jen s dvěma 64bitovými pipeline (v big.LITTLE procesoru mohou být i 64bitové, ale šířka vektoru z pohledu softwaru bude kvůli kompatibilitě pořád 128bitová, všechny SVE instrukce pak budou konzumovat obě pipeline naráz).

Podpora těchto SIMD instrukcí ale zřejmě je o dost náročnější a potřebuje víc tranzistorů, což vedlo ARM k tomuto pokusu plochu jader (přesněji celého jejich klastru) snížit. Protože SIMD instrukce jsou méně běžné než základní celočíselné operace, může zvlášť pro malá jádra toto být dobrý kompromis. Bulldozer neměl zas tak špatný výkon ani v úlohách, které SIMD silně využívaly, takže v malých jádrech, určených spíše pro pomocné účely, by to mohlo být úspěšnější než v AMD FX. Při použití dvou 128bitových pipeline je ostatně výkon této jednotky teoreticky 2× než výkon jednotky Cortexu-A55, takže zde by skutečně nemusela nastat regrese ve finálním výkonu. ARM tvrdí, že negativní dopad je jen v jednotkách procent.

In-order jádro s výkonem (starého) out-of-order jádra

Samotné jádro Cortex-A510 je 3-wide, tedy stavěná na zpracování až tří instrukcí za takt s jednoduchým in-order vykonáváním instrukcí. Neumí tedy za běhu instrukce přeházet v pořadí, aby tím zlepšilo výkon skrze maximální využití svých výpočetních jednotek. Více instrukcí najednou může vykonat, jen když sou v kódu hned vedle sebe a jejich složení odpovídá volným jednotkám.

Tuto slabinu ARM kompenzuje použitím pokročilých prediktorů větvení a prefetcherů z Cortexu X2. Jádro má 32KB+32KB nebo 64KB+64KB L1 cache, L2 cache v komplexu může mít kapacitu od nula do 512 KB.

Zatímco fetch jádra bude číst až čtyři instrukce (128 bitů kódu) za cyklus, dekodéry už jsou jen tři, což dává onen limit třech instrukcí za cyklus. To je ovšem zlepšení proti Cortexu-A55 s dvěma dekodéry.

Stejně jako dekodéry také byl zvýšen počet ALU ze dvou na tři, dále je ve celočísleném výpočetním backendu komplexní jednotka pro násobení nebo dělení a jednotka zpracovávající větvení.

Load/Store jednotky jsou dvě a umožňují buď jedno čtení a jeden zápis za cyklus, nebo dvě čtení (dva zápisy nelze), šířka čtení je 128bitů, tedy dost pro 128bitový vektor Neon/SVE. Cortex-A55 měl šířku těchto cest jen 64 bitů. Navíc mělo toto jádro podporu jen pro jedno čtení a jeden zápis za takt, nepodporovalo místo toho dvě čtení za takt (mělo totiž vyhrazené jednotky store a load, kdežto A710 má jednotky load a kombinovanou load/store).

Podle ARMu se u této architektury podařilo přes in-order zpracování instrukcí dosáhnout výkonu, který se blíží do určité míry velkým jádrům v minulých procesorech. Cortex-A510 má údajně zaostává jen o 10 % v IPC za out-of-order jádrem Cortex-A73 z roku 2017. To jinak pořád často používají levné telefony jako „big“ jádro (pokud tedy SoC není ještě lacinější a nemá jen samá jádra CortexA-55/A53). Je ovšem pravda, že A510 také dosáhne nižších frekvencí, jen asi 85 % taktu, který by zvládl Cortex-A73 (a výkon je IPC krát takt). Ovšem Cortex-A510 má zejména spotřebovávat o 35 % méně energie.

Tímto srovnáním chce automaticky ARM ukázat, že in-order jádro nemusí automaticky znamenat pomalost, ovšem je pravda, že Cortex-A73 je ještě jádro z doby, než začal ARM dělat největší pokroky ve výkonu (pak přišly kumulativně Cortexy A75, A76, A77 a výkon se dostal úplně jinam).

IPC

Ve srovnání s Cortexem-A55 coby přímým předchůdcem má nový Cortex-A510 dosáhnout až o 35 % lepší výkon v SPECint2006, o 50 % lepší výkon v SPECfp2006 (asi půjde o jednovláknový test, takže se neprojeví postih ze sdílení FPU). V LMbench má dokonce být nárůst výkonu až 62 %. Toto má být při stejných frekvencích, ale zase je zde ten problém, že ARM srovnává stará jádra s 4MB L3 cache s novým opatřeným 8MB L3 cache, což způsobuje, že nárůst IPC vypadá lepší, než co jádro samo o sobě dosáhlo.

Cortex-A510 však při výrobě stejným procesem má mít sice výrazně vyšší maximální výkon, ale také s o dost vyšší spotřebou. Efektivita se má zlepšit také, ale méně, než výkon. Pokud by se obě jádra zekvalizovala na stejnou spotřebu, pak bude mít Cortex-A510 o 10 % vyšší výkon. Při stejném výkonu (který A510 dodá už při nižším taktu) má být spotřeba nižší až o 20 %, což ale platí pro pásmo, kdy A55 běží na svých nejvyšších možných frekvencích, které jsou méně efektivní. Jinak se na nižších taktech podle grafu ARMu křivka efektivity de fakto překrývá s novým jádrem, což by znamenalo, že jádro A510 dosáhlo jen parity v efektivitě a čím se odlišuje, je schopnost vyškálovat výkon výš než A55.

I zde lze tedy říct, že ARM neudělal v této generaci nějaké revoluční pokroky (ve výkonu ano, ale vycházíme z toho, že má měřítkem úspěchu malých jader být právě efektivita). Opět ale asi může platit, že v této generaci si vybralo daň přidání podpory pro ARMv9, takže v když je ta konečně z krku, možná se v dalších generacích objeví větší pokrok v úspornosti. Otázka samozřejmě je, kdy se další generace objeví, protože malá jádra ARM typicky neaktualizuje každoročně. Nyní by prý novější verze měly přicházet častěji, ale jednoleté odstupy to asi pořád nebudou.

Galerie: Architektura ARM Cortex-A510

Propojení DSU-110

ARM jinak pro tuto generaci jader jádra uvádí i novou propojovací logiku DynamIQ Shared Unit-110, která je úplně nově redesignovaná proti předchozímu propojení používanému v mobilních procesorech. Tato logika má vylepšit energetickou efektivitu i řadu dalších věcí, asi nejviditelnější novinka ale je, že podporuje větší maximální L3 cache – nově až 16 MB. To logicky může zvýšit výkon procesorů. Má ale stoupnout i propustnost, kterou jádra budou moci z L3 cache vytěžit, a to také propustnost dostupná pro jedno jediné aktivní jádro.

Je zajímavé, že ARM změnil topologii tohoto propojení. Dříve nebyla její povaha prozrazována, ale dost možná šlo o crossbar, tedy plně propojenou sběrnici, kde mělo každé jádro jednotlivá přímá napojení na všechna ostatní.

Nyní ARM ale přešel na prstencovou sběrnici, jakou má Intel v desktopových a notebookových procesorech. Přesněji, jsou to prstence dva propojené, kdy každý obsluhuje čtyři jádra, přesněji čtyři bloky L3 cache, které k jádru přísluší (komplex dvou jader A510 zřejmě vystupuje jako jen jeden takový klient). Oba prstence jsou obousměrné a použití dvou propojených místo jediného má zkrátit maximální latence komunikace.

Budou čtyřjádra nebo osmijádra Cortex-X2?

Na základě této propojovací logiky lze mít konfigurace začínající u jednoduchých čtyřjader (s dvěma komplexy) Cortex-A510 až k osmijádrovým procesorům. Ty mohou mít třeba dvě jádra A710 a šest (tři komplexy) A570, nebo složení 4+4. Podporovaná je i konfigurace čtyř A510, tří výkonnějších prostředních A710 a jednoho výkonného X2, což se asi objeví v mobilech – letošní čipy jako Snapdragon 888 a Exynos 2100 toto používají.

Ovšem pro notebooky nebo PC už nyní ARM explicitně uvádí variantu, kdy by procesor měl čtyři prostřední jádra Cortex-A710 a k tomu čtyři výkonnější Cortexy-X2, Logika dokonce má již podporovat i úplně homogenní osmijádro se samými jádry Cortex-X2. To by mohlo mít maximální zátěžovou spotřebu třeba až 40–50W, při snížení frekvencí v all-core zátěži by to ale mohlo být docela použitelné i v noteboocích.

U Cortexu-X1 ještě ARM vůbec podobné konfigurace jako možnost neuváděl a naopak uvedl design počítající pro osobní počítače a notebooky s osmi jádry Cortex-A78C. Proti tomu tedy teď nastává posun a je možné, že nyní nějaký partner ARMu opravdu vytvoří takový výkonnější procesor pro notebooky nebo dokonce desktopy.

Galerie: ARM DynamIQ Shared Unit-110

Zdroje: ARM, AnandTech