Rozbor CPU architektury Intel Gracemont: „Malá jádra“ Alder Lake jsou silnější, než čekáte

24. 8. 2021

Sdílet

 Autor: Intel
Přinášíme detailní rozbor malého jádra v procesorech Alder Lake. Čekáte, že je úsporné a nevýkonné? Ve skutečnosti je ale architektura Gracemont pořád hodně rychlé jádro, které bychom vedle něčeho jiného než Golden Cove normálně označili za velké...

Intel teď odhalil architekturu svých nejnovějších procesorů Alder Lake. Tentokrát jsou to ale architektury dvě. Alder Lake je hybridní a vedle „velkých“ jader pro jednovláknový výkon má další „malá“ jádra Gracemont. Ta ale nejsou jen do počtu či pro úsporu energie v nečinnosti jako u ARMů v mobilech, naopak se významně podílí na celkovém výkonu. Jejich architektura je vlastně sama celkem velká a teď se na ní detailně podíváme.

Velká a „malá“ jádra: proč vůbec?

Tzv. „big.LITTLE“ koncepce byla u Alder Lake kritizována od chvíle, kdy o ní přišly první zprávy, panovaly obavy, že bude výkon procesoru minimálně v desktopové oblasti brzdit. Jak je tomu skutečně se opravu ukáže až v recenzích, ale už z odhalených rysů architektury Gracemont je jasné, že tato debata možná byla od začátku svedená na scestí používáním ono pojmu „malé jádro“.

Po pohledu na schéma Gracemontu se toto označení nezdá být správné a vskutku: Intel tuto architekturu označuje jako „Efficient Core“ (E-Core), tedy efektivní jádro. Možná bychom na chvíli měli zapomenout na to, co o big.LITTLE víme, a také na to, že Gracemont evolučně vychází z linie malých jader Intelu (linie Atom). Podle toho co Intel představil, použití dvou druhů jader řeší v desktopových procesorech Alder Lake problém, který vlastně ani moc nevychází z mobilní oblasti, a to problém optimálního dimenzování procesorové architektury pro ideální výkon ve všech úlohách. Je možné, že snižování spotřeby a prodlužování výdrže na baterii v mobilní verzi Alder Lake je nakonec i jen vedlejší produkt.

Řešení dilematu mezi ST a MT výkonem?

V čem onen problém spočítá? Od procesorového jádra požadujeme jednak co nejvyšší jednovláknový výkon, který je důležitý pro rychlost jednovláknových aplikací, výkon ve hrách, ale i responzivnost OS a webového prohlížeče. Současně je zde ale také celkový mnhovláknový výkon – tedy výkon, který z procesoru lze vydupat, když se použijí všechna jeho jádra a vlákna. Potíž je v tom, že jedna stejná architektura nemusí být optimální pro obě tyto role.

Jde vlastně o stejnou věc, kvůli které ARM rozdělil svou linii velkých jader na Cortex-A78 a X1 (a podobně v následujících generacích). Pokud se procesor zaměřuje na dosažení co nejvyššího jednovláknového („ST“ jako single-thread) výkonu, dává smysl udělat kompromisy, které za relativně menší navýšení výkonu platí poměrně velkým navýšením spotřeby, ale také komplexity, počtu potřebných tranzistorů a tím velikostí čipu. Navýšení jednovláknového výkonu třeba o 10 % může klidně opodstatňovat, aby jádro bylo o 30 % větší a žravější, protože vysoký ST výkon je z pohledu designérů CPU dost cenná věc. A jednovláknová úloha většinou není omezená celkovým TDP čipu, protože maximální příkon jednoho jádra bývá menší než TDP celého procesoru.

Procesor Alder Lake s osmi jádry Golden Cove a osmi úspornými jádry Gracemont Procesor Alder Lake s osmi jádry Golden Cove a osmi úspornými jádry Gracemont (Zdroj: Intel)

Ovšem pokud chceme získat vyšší mnohovláknový („MT“, multi-thread) výkon, tak můžeme zjistit, že je strategie potřebná pro maximalizaci ST výkonu naopak na obtíž. Pro mnohovláknový výkon je obvykle podstatným omezením to, jakou má procesor dovolenou spotřebu (TDP). Úkolem inženýrů je v rámci konečného počtu wattů dosáhnout co nejlepší možný MT výkon, tedy souhrnný výkon všech jader dohromady. To nutně znamená, že nesmíte kvůli 10 % výkonu akceptovat 30 % spotřeby navíc, potřebujete naopak řešení, kde bude nárůst výkonu s nárůstem spotřeby mnohem více v rovnováze. Dobrou strategií je použít více jader, která ale běží na nižší, více efektivní frekvenci, než na jaké by běžela pro dosažení ST výkonu. Kvůli tomu, abyste mohli mít jader co nejvíce, je zase nutné být šetrnější v zabraném místu na čipu, protože jinak se vám na něj nevejde tolik, kolik byste chtěli, nebo bude čip dražší, než vám je dovoleno.

Pro nejlepší MT výkon je tudíž optimální jádro, které nejde za ST výkonem tak agresivně – spokojí se s třeba o 10 % nižším maximálním ST výkonem jádra, ovšem získá za to o 30 % nižší spotřebu a o 30 % nižší plochu. Díky tomu pak tato jádra v určitém počtu dokáží dostat z daného TDP (ať už je to třeba 35 W, nebo 125 W) vyšší MT výkon.

Slajdy k vydání architektury ARM Cortex X1 – 03 Slajdy k vydání architektury ARM Cortex-X1 a Cortex-A78 popisují odlišné strategie jader (Zdroj: ARM)

U procesorů ARM tuto strategii sledují velká jádra Cortex-A78 nebo nyní A710, která jsou navržená na optimální poměr výkonu, plochy a spotřeby, zatímco strategie k dosažení vyššího ST výkonu za cenu horší efektivity a neoptimální velikosti jádra vedla k jádrům Cortex-X1 a X2.

U Alder Lake se zdá, že jádro Golden Cove je hodně jako ARM Cortexy-X a „malá jádra“ Gracemont zase nejsou ani tak malá, jako spíše střední nebo menší velká jádra, podobně jako Cortex-A78 nebo A710. To, že Intel používá označení Performance Core a Efficiency Core by tomuto odpovídalo. Cíl použití hybridní architektury je, aby se už nemuselo rozhodovat, zda procesor použije jádra aspirující na maximální jednovláknový výkon (ST strategie), čímž ale utrpí maximální MT výkon, nebo zda by nebylo lepší je udělat více efektivní a menší pro vyšší MT výkon.

Hybridní přístup Alder Lake znamená, že v procesoru je nějaký počet velkých jader plně se soustředících na maximální ST výkon, ale další jádra už jsou více zaměřená na vyšší efektivitu a mnohovláknový výkon (Intel tomu také říká „škálovatelnost“ a optimalizace na výpočetní propustnost/throughput). Ta tím vylepší MT výkon, který procesor zvládne dosáhnout v rámci určitého limitu TDP a plochy čipu. Jednovláknový výkon není logicky třeba mít vysoký na všech jádrech, pokud operační systém umí jednovláknové aplikace na ta správná jádra umístit. Proto může být výhodné mít dokonce i většinu jader těch malých, nebo lépe řečeno efektivních. A to je podle drbů, které se šíří o budoucích procesorech následujících po Alder Lake, prý přesně směr, kterým Intel půjde. Můžeme se prý setkat s procesory s osmi velkými a šestnácti, nebo i 32 efektivními jádry.

Teorie je jedna věc, uvidíme, jak dopadne praxe

Tento dlouhý a ukecaný úvod měl za cíl vysvětlit, proč „big.LITTLE“ strategie přes obecnou skepsi může mít smysl i v desktopových a poměrně výkonných procesorech. Soudě podle komentářů si to teď totiž mnoho z vás nemyslí a očekávání jsou spíš negativní.

Zatím nevíme, zda v praxi procesory Alder Lake v onom řešení popisovaného problému uspějí. Rozumná nebo opodstatněná koncepce se nemusí vždy přetavit ve fungující implementaci. Může se samozřejmě stát, že efektivita, kterou tato konkrétní verze malých/efektivních jader dosáhne, nebude dost dobrá, aby převážila potíže, které může hybridní (asymetrický procesor) zase způsobit. Ovšem koncepce sama o sobě vypadá smysluplně a životaschopně.

Teď už tedy opravdu k rozboru architektury Gracemont. Doporučujeme přečíst nejdřív článek o velkém jádru („Performance Core“) Golden Cove. Malé jádro („Efficiency Core“) Gracemont stojí za to vnímat v kontextu větší sesterské architektury.

Tip: Intel Alder Lake má historicky nejvyspělejší x86 jádro. Rozbor CPU architektury Golden Cove

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

Gracemont: „malá“(?) architektura silná už jako Skylake

Gracemont je jádro, která podle Intelu bylo navrženo tak, aby mělo při co možná nejmenší ploše co možná nejvyšší výkon a díky tomu se s ním dalo dosáhnout dobrého škálování monohovláknového výkonu. Jádro by mělo mít výkon až někde okolo architektury Skylake – tedy aspoň pokud by jejich frekvence byly stejné – ale nižší spotřebu.

Cíl bylo, aby Gracemont měl vyšší IPC než Skylake, ale jádro je navržené na běh na nízkých napětích, takže spotřeba má prý být „zlomková“. Dokonce by prý mělo jít o x86 jádro s nejvyšší energetickou účinností (tedy nejlepším poměrem výkon/watt) na světě.

Poměrně významný rozdíl ale je, že jde jen o jádro zpracovávající jedno vlákno. Chybí technologie HT. Zda ji Intel v tomto druhu jádra nechce mít (kvůli komplexitě, spotřebě, tranzistorech navíc), nebo se jen ještě nedostal k tomu, aby ji do E-Core přidal a v budoucnu se zde také objeví, to nevíme. HT benefituje z širokého výkonného jádra, což Gracemont až překvapivě silně je.

Frontend s 2×3 dekodéry

Na Gracemontu je jasně vidět, že vychází z předchozí „Atomové“ architektury Tremont (její architekturu jsme popisovali zde), ale jádro je stejně jako Golden Cove proti předchůdcům značně rozšířeno. Jádro po Tremontu přejímá jeho nejvýraznější rys: dekodéry, které jsou rozdělené do dvou klastrů po třech – počty zůstaly stejné. Tyto dva klastry nejsou rovnocenné šesti dekodérům v jádru Golden Cove, při dekódování proudu instrukcí se nemohou spřáhnout dohromady a dekódovat šest po sobě následujících instrukcí. Mohou jen paralelně dekódovat dva proudy instrukcí, každý po třech instrukcích za cyklus. Toto řešení je proti šesti dekodérům energeticky úspornější.

K současnému využití obou skupin dekodérů dochází tehdy, když procesor kvůli větvení ví, že bude skákat na určitou adresu v kódu, kterou může druhý klastr dekodérů použít jako startovní bod a začít od tohoto místa paralelně dopředu dekódovat. Větvení mohou být v kódu hodně častá (při vydání Tremontu se mluvilo, že mohou nastávat v průměru třeba i každých šest instrukcí), což by dovolovalo druhý klastr dekodérů využít překvapivě často.

Zatímco kapacita dekodérů je stejná jako u Tremontu, Intel zvětšil na dvojnásobek L1 instrukční cache, která má místo 32 KB teď 64 KB (paradoxně 2× víc, než v Golden Cove). Stejně tak byla zvětšena Branch Target Cache prediktoru větvení (na 5000 položek, velikost v Tremontu nevíme), což zlepší jeho úspěšnost. Prediktor si má pamatovat poměrně dlouhou historii, což by opět mělo pomáhat úspěšnosti.

Predecode informace v L1 instrukční cache

Jádro používá optimalizaci nazvanou On-Demand Instruction Length Decode. Ta by měla spočívat v použití pre-dekódování při načítání dat do L1 instrukční cache, které zjistí délky instrukcí a udržuje tuto informaci v L1 jako metadata (takže procesor už bude vědět, kde jednotlivé instrukce začínají). Tato informace se pak používá při opětovném provádění stejného kódu z L1 cache, kdy se díky tomu část práce dekodérů ušetří (a tím se také uspoří energie).

Gracemont nepoužívá μOP cache pro cachování již dekódovaných instrukcí a jejich opětovné použití, což větší x86 jádra (Intel od Sandy Bridge, AMD od Zenu, ARM od Cortexu-A77) implementují pro snížení spotřeby. Predecode a cachování délky instrukcí je zřejmě jakási zjednodušená náhrada, která je asi méně náročná na implementaci a množství tranzistorů, i když asi také méně pokročilá.

Velké posílení hlavně Out-of-order enginu a výpočetních jednotek

Zatímco Golden Cove provedlo největší rozšíření jádra ve Frontendu a menší v Backendu procesoru (samotných výpočetních jednotkách), Gracemont je tak trošku opačný případ. Frontend proti Tremontu není tak zvětšený, ale Backend výpočetních jednotek naopak velmi. Společné s Golden Cove ale je, že byla posílená prostřední část, kde dochází k optimalizaci a přehazování instrukcí stylem out-of-order.

Fáze Allocation umožňuje v Gracemontu zpracovat až pět instrukcí (μOPů) přicházejících z fáze dekódování a fronty μOP Queue za cyklus. Je to zlepšení o čtvrtinu proti Tremontu (ten je v této fázi pipeline jen 4-wide) a není to moc daleko od jádra Golden Cove, které má fázi Allocation zpracovávající až šest instrukcí za cyklus (6-wide). V této fázi se μOPům přiřazují jejich pracovní registry a dále se provádí přejmenování registrů kvůli konfliktům, které umožňuje instrukce používající kolidující architektonické registry vykonat současně. Zde také procesor dokáže eliminovat některé operace, které nepotřebují jít dál do výpočetních jednotek (MOV Elimination, Zeroing Idiomy).

Out-Of-Order okno jako má Zen 3

Po této fázi v procesoru následuje Re-Order Buffer (ROB), tedy fronta instrukcí, v níž procesor jejich pořadí přehazuje tak, aby se jich co nejvíce vykonalo paralelně a tím se využily pokud možno všechny dostupné jednotky. Out-of-order procesor může instrukce, které na sobě nezávisejí, vykonat paralelně a pokud nejbližší instrukce zatím nemají splněné závislosti nebo pro ně chybí data, může místo nich zatím počítat dopředu instrukce, které budou následovat v kódu dále. Toto kód „zkompaktní“ a k jeho vykonání je pak třeba méně cyklů. Ale pro co nejlepší účinnost tohoto přeorganizování je třeba, aby procesor „viděl“ co největší kus kódu, a tento kus představuje právě délka fronty Re-Order Buffer.

Intel ho v Gracemontu použil docela velký – má totiž 256 položek. Je to sice jen polovina ROB, který má Golden Cove (512 položek), ale víc, než má architektura Skylake (224 položek), a co je pozoruhodné, stejná hloubka ROB, jakou má AMD u Zenu 3 (také 256). Je sice pravda, že Zen 3 je asi spíš výjimka, kde je ROB netypicky malý na to, jak je jádro výkonné, ale to, že má Gracemont 256 položek, dobře ukazuje, jak se vymyká z kategorie „malého jádra“.

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

Výpočetní jednotky: 17 portů, potenciál pro vysoké IPC

Totéž se asi dá říct o samotném backendu výpočetních jednotek. Tam totiž Intel hodně přidal na výpočetních portech, do kterých jsou jednotky organizovány. Paradoxně má dokonce Gracemont teď víc portů, než Golden Cove. To je ale proto, že Golden Cove má unifikovaný scheduler pro AGU, ALU i FPU/SIMD operace a ALU a SIMD má rozmístěno na stejných pěti portech. Naproti tomu Gracemont používá podobnou koncepci jako AMD a má rozdělené jednotky ALU a AGU, které pracují s obecnými x86 registry, a separátně pak jsou na svých vlastních portech jednotky FPU/ SIMD, které pracují nad vektorovými registry YMM, XMM (a legacy x87).

Zatímco Tremont měl 10 portů, Gracemont má o dost víc výpočetních i AGU a FPU/SIMD jednotek a kvůli tomu je portů dokonce 17 (Golden Cove jich má díky onomu sdílení portů jen 12). Počet ALU stoupl ze tří v Tremontu na čtyři (jako má Zen 3; Golden Cove má pět). Z těchto čtyř dvě umějí jen jednodušší operace typu sčítání, posuv a logické operace. Navíc i násobení a celočíselné skalární dělení umějí zbylé dvě z ALU – tyto operace tedy lze provést dvě za cyklus, jednodušší instrukce čtyři za cyklus. ALU jsou na portech 0, 1, 2 a 3.

Gracemont má separátní jednotky pro výpočet větvení (JMP), které tak neobtěžují jednotky ALU. Tyto jednotky mají dva vlastní porty, označené 30 a 31. Jádro tak dokáže zpracovat dvě větvení za cyklus, zatímco Tremont uměl jen jedno.

FPU (SIMD): AVX a AVX2, VNNI

Ona separátní část s jednotkami FPU/SIMD zabírá pět portů – z nich dva (28, 29) slouží jen pro ukládání dat ze SIMD registrů podobně jako skalární Store Data pipeline. Výpočetní SIMD jednotky jsou na třech portech (20, 21, 22) a Gracemont na nich má dvě symetrické pipeline pro floating-point SIMD instrukce, které umí sčítání (FADD), násobení (FMUL) a také akceleraci AES. Floating-point dělička je jen na jedné pipeline, stejně jako jednotka pro akceleraci kryptografického algoritmu SHA. Oproti Tremontu je floating-point výkon až dvojnásobný (s výjimkou dělení), jelikož v jeho případě měla FPU sice dva porty, ale celkem jen jednu jednotku FADD a jednu FMUL.

Celočíselné SIMD operace (užitečné například pro multimédia, ale i další obecnější úlohy) umí dokonce tři jednotky (oproti dvěma v Tremontu), ovšem zase to platí jen pro ty jednodušší instrukce. Celočíselné SIMD násobení je jako v Tremontu jen na jednom portu.

Velká novinka je, že Gracemont podporuje instrukce AVX a AVX2, tedy 256bitové vektorové operace jak nad celočíselnými, tak nad floating-point daty. Intel nezmiňuje, zda se tyto operace vykonávají v jediném cyklu, tedy zda jsou ony dvě, respektive tři jednotky nativně 256bitové. To by už kladlo Gracemont hodně blízko spotřebitelské verzi Golden Cove, která má vypnuté AVX-512, takže bych spíš čekal, že vykonávání bude po dvou 128bitových polovinách. Tak je to například u AMD Zenu 1 a znamená to poloviční teoretický výkon v AVX a AVX2, v praxi ale zpomalení programů často bývá méně drastické.

Díky podpoře AVX a AVX 2 je možné používat na Alder Lake tyto užitečné instrukce místo toho, aby musely být u velkých jader Golden Cove deaktivované, jako se to stalo u hybridního procesoru Lakefield. Zmíněno je i rozšíření FMA, takže i to bude Alder Lake jako celek podporovat.

Poměrně důležité by mělo být, že Gracemont podporuje instrukce VNNI zřejmě nad 256bitovými instrukcemi místo 512bitových), což umožňuje použití stejného rozšíření i u Golden Cove v procesorech Alder Lake. Toto rozšíření je užitečné pro akceleraci neuronových cítí (aplikace umělé inteligence), byť jeho výkon bude v této omezenější formě trošku nižší, než u jader s AVX-512.

Z dalších už ne SIMD rozšíření Gracemont také podporuje bezpečnostní funkci Control-flow Enforcement Technology, která měla premiéru v procesorech Tiger Lake a VT-rp (Virtualization Technology redirect protection). Jádro by prý mělo být poměrně odolné proti různým side-channel bezpečnostním zranitelnostem a útokům.

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

Paměťový subsystém: Dvakrát víc AGU a Load/Store

Load-Store část má čtyři jednotky AGU (porty 10, 11, 12, 13), které mohou provést dvě čtení a současně i dva zápisy dat do paměti (respektive do cache). Toto je na úrovni procesorů Ice Lake/Tiger Lake a dá se to považovat za velmi výkonný load/store subsystém. Tremont ještě měl jen dvě AGU, které uměly maximálně dvě operace za cyklus (maximálně dvě čtení nebo zápisy). Šířka těchto paměťových operací je 16 bajtů (128 bitů), což umožňuje za cyklus přečíst i zapsat data dvou SIMD vektorů instrukcí SSE, nebo jednoho 256bitového SIMD vektoru instrukcí AVX/AVX2 (32 B/cyklus).

V této datové propustnosti je jádro Gracemont horší než Golden Cove, jenž sice nezvládá o moc víc operací (3 čtení a 2 zápisy za cyklus), ale je to s dvojnásobnou datovou šířkou 256 bitů, takže propustnost je výrazně lepší (čtení až 96 bajtů/cyklus, zápis zřejmě 64 bajtů/cyklus), což se při náročných SIMD výpočtech s hodně daty může projevit. Na druhou stranu ani třeba Zen 3 také nemá zas tak silnou propustnost, takže toto nemusí typicky být tak velký handicap.

V Tremontu AGU byly univerzální, zatímco čtyři v Gracemontu jsou dedikované pro zápis nebo čtení. To znamená, že pokud program neustále současně zapisuje i čte, má Gracemont až 2× výkon těchto operací, ale pokud by se jen četlo nebo jen zapisovalo, není proti staršímu jádru rozdíl. Na dalších dvou portech (8, 9) jsou pak separátně operace pro ukládání dat.

Cache: sdílená L2 (a také L3)

L1 datová cache Gracemontu má kapacitu 32 KB, menší než je 48 KB v Golden Cove nebo Sunny/Willow/Cypress Cove (procesory Ice/Tiger/Rocket Lake), ale stejnou, jako má Zen 3. Jenže Gracemont také zřejmě má nižší (lepší) latenci. Pro operace „pointer-chasing“ Intel udává jen tři cykly. Je ale asi možné, že pro jiné operace už to budou čtyři cykly.

L2 Cache má u architektury Gracemont konfigurovatelnou kapacitu, může to být 2 MB, nebo 4 MB, což ale není pro jedno jádro, ale sdílené pro čtyři, která tvoří jeden sdružený klastr. Podle před časem uniklých informací by v procesorech Alder Lake měla být použitá kapacita nižší, 2 MB společně pro čtyři jádra.

Propustnost této cache je 64 bajtů za cyklus (1024 bitů/cyklus), což je relativně dost i pro zátěž všech jader, a její latence je 17 cyklů. L2 Cache také podporuje až 64 paralelních missů, tedy požadavků na data do L3 Cache nebo RAM (protože se v L2 nenašly). Toto zvyšuje výkon při prací s pamětí. Větší buffer těchto operací omezuje výskyt situací, kdy se musí čekat, až dorazí dříve požadovaná data, než se budou moci poptávat další.

Všechny úrovně cache v Gracemontu mají mít vylepšený prefetching, který detekuje různé druhy pravidelného streamování dat a dokáže pak podle onoho vzorce načítat předem z potřebných adres. Podporovaná je technologie Intel Resource Director, která umožňuje softwaru nastavit rozdělení pásma cache pro jednotlivá jádra nebo vlákna.

Schéma CPU jádra Intel Gracemont Schéma CPU jádra Intel Gracemont (Zdroj: Intel)

Zatímco L1 a L2 cache jsou přímo vlastnost architektury Gracemont, o L3 cache Intel zatím nehovoří. V procesorech Alder Lake budou asi jak velká jádra, tak malá jádra mít sdílenou L3 cache o stejných parametrech, neboť ta je vázaná na prstencovou sběrnici, která jádra propojuje. Zdá se ale, že zatímco každé velké jádro má vlastní 3MB blok L3 cache, u jader Gracemont bude jeden takový blok sdílený současně pro celý klastr čtyř jader Gracemont (ostatně podobně jako bude sdílená L2 cache).

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

Rychlost: „Malé“ jádro má až dvě třetiny výkonu velkého

Intel v prezentaci jádra Gracemont porovnával jeho efektivitu a výkon s architekturou Skylake z roku 2015, jejíž dlouhé působení na trhu z ní udělalo jeden z nejčastějších procesorů v PC. Podle tvrzení Intelu má Gracemont dokonce vyšší IPC než Skylake a při stejných frekvencích by proto mohl mít i lepší jednovláknový výkon. Ovšem je pravděpodobné, že Gracemont nedosáhne tak vysoké takty jako Skylake (až 5,3 GHz v její nejvýkonnější verzi).

Ve srovnávacích grafech Intel ukazuje, že v jednovláknovém benchmarku SPECrate2017_int_base má Gracemont (Efficient Core) lepší výkon než Skylake při lepší spotřebě – a jeho křivka končí na vyšším absolutním výkonu, ale to může být proto, že Intel pracuje s nějakými relativně nízkými takty (že by 4,2 GHz, což bylo maximum první generace Skylake, v Core i7-6700K?).

Pokud by se obě jádra nastavila na stejný výkon, Gracemont by údajně podle Intelu konzumoval méně než 40 % spotřeby Skylake. A naopak, pokud by bylo Gracemontu dovoleno konzumovat stejný příkon, jako jádro Skylake, tak by při tom vyprodukoval o 40 % vyšší výkon.

Intel také ukázal srovnání v mnohovláknové úloze, v níž ale srovnává čtyři jádra Gracemont s dvěma jádry Skylake s HT (a tím čtyřmi vlákny). V takovém srovnání má Gracemont dosáhnout až o 80 % lepší výkon ve SPECrate2017_int_base a přitom mít lepší spotřebu. A dokonce by čtyři Gracemonty měly být schopné dodat výkon 2C/4T Skylaku při méně než 20% spotřebě. Bohužel zase nejsou uvedené frekvence, na kterých je toto konstruováno.

Tato srovnání proto berte s rezervou, protože na tom, na jaké frekvenci jádra běží, v tomto případě zatraceně závisí. Je téměř jisté, že pokud by se Skylake nastavilo na 5 GHz, tak Gracemont nebude asi schopen dosáhnout dalších 40 % jednojádrového výkonu navíc. Protože se zdaleka nedostane na stejnou frekvenci a asi ani spotřebu, tak vysoko nebude tato úspornější architektura schopná škálovat. Je pravda, že Intel zatím neprozradil, jak je hluboká pipeline (kolik mí stupňů), ale třeba již z třícyklové latence L1 cache by mohlo vyplývat, že maximální dosažitelná frekvence bude nižší. A také pamatujte na to, že Skylake se vyrábí na 14nm procesu a Gracemont má k dobru 7nm proces Intelu (dříve označovaný 10nm Enhanced SuperFin).

Jak si Gracemont stojí proti Golden Cove?

Možná o trochu užitečnější pro perspektivu bude srovnání s velkým jádrem Golden Cove (P-Core), protože u toho Intel má motivaci neprezentovat ho v nevýhodných situacích, aby pokrok vypadal větší. V prezentaci Intelu je zdá se srovnání, podle kterého lze Golden Cove vyškálovat na jednovláknový výkon až o 50 % lepší, než co lze dosáhnout u jádra Gracemont (E-Core). Bylo by to samozřejmě při značně vyšší spotřebě – z grafu těžko odhadnout, ale klidně i několikanásobné (ale zdá se, že Gracemont má také poměrně strmou křivku nárůstu spotřeby při svých nejvyšších taktech, takže například mezi 100 % a 90 % jeho špičkové frekvence může být obrovský rozdíl spotřeby.

Každopádně ale toto srovnání nevychází pro Gracemont vůbec zle – pokud Golden Cove dosahuje o 50 % vyšší jednovláknový výkon, tak by obráceně Gracemont měl být schopen dosáhnout až dvě třetiny jeho jednovláknového výkonu. Což by z něj skutečně dělalo spíš velké jádro – sice velké jádro odpovídající procesorům o pár generací dozadu, ale s výkonem pořád jakž takž vyhovujícím. Zvlášť když je určené k dodání MT výkonu a ne ST výkonu.

V monohovláknovém výkonu Intel ukazoval srovnání mezi čtyřjádrem se samými jádry Golden Cove a hybridem, kde jsou jen dvě jádra Golden Cove a k nim osm jader Gracemont (2+8 big-LITTLE). Podle grafu je prý výsledný mnohovláknový výkon o víc jak 50 % lepší než u nehybridního čtyřjádra Golden Cove. To by implikovalo, že čtyři jádra Gracemont mají stejný nebo o něco lepší mnohovláknový výkon, jako dvě jádra Golden Cove. První čtveřice E-Core tedy vyrovná ztrátu dvou P-Core (polovinu výkonu) a druhá pak ještě jednou tolik přidá. Toto už ale není při stejné spotřebě, ale o něco vyšší – jeden čtyřjádrový klastr Gracemontů může tedy při plném výkonu spotřebovávat více energie než jedno jádro Golden Cove. Nicméně toto opět bude hodně záviset na tom, na jakých taktech obě architektury zrovna běží.

Jaký bude přesně výkon a otázku, o kolik je IPC vyšší než u jádra Skylake, bude asi lepší nechat až na nezávislé testy po vydání. Podle úniků frekvence Gracemontu ve 125W desktopových procesorech Alder Lake dosahují maxima asi 3,6 až 3,9 GHz, což ovšem slibuje slušný potenciál, je-li IPC vyšší než u Skylake. Tedy alespoň pro úlohy, které málo profitují z Hyper Threadingu (druhého vlákna u velkých jader).

Jádro Gracemont v procesoru Alder Lake zabírá nesporně mnohem méně místa než jedno Golden Cove, ale zatím nevíme přesně, jak moc velký nepoměr to je. Podle symbolických schémat Intelu by dokonce jeden čtyřjádrový klastr Gracemontů mohl mít zhruba srovnatelnou plochu jako jedno jediné jádro Golden Cove, ale není jisté, zda ilustrace nejsou zkreslené a plocha není třeba o něco větší. Nicméně v prezentaci Intelu se říká, že čtyřjádrový klastr Gracemontů má podobnou plochu, jako jedno jádro Skylake (na 14nm procesu), takže by to asi mohlo být blízko.

Zhruba by tak asi mohlo platit, že v Alder Lake by místo čtyř Gracemontů mohlo být už jen jedno další P-Core. První varianta s malými jádry by měla dosahovat určitě vyššího mnohojádrového výkonu, což je přesně ta efektivita a škálovatelnost, o níž Intel mluví. Potvrzeno to ale bude, až když dostaneme reálná čísla o ploše těchto jader a o jejich spotřebách.

Jak (předběžně) hodnotíte architekturu Intel Gracemont v Alder Lake?

I malé jádro si zaslouží pozornost

I u Gracemontu tedy asi budou první testy a recenze hodně zajímavé, možná ještě více než u Golden Cove. Až Alder Lake za dva měsíce vyjde, bude to i bez ohledu na to, jak dobře se Intelu podaří splnit výkonnostní sliby a interní cíle, asi jedna z nejvýživnějších procesorových novinek posledních let co do nových fenoménů a věcí, které bude třeba studovat a také si na ně možná zvykat.

Dlužno říct, že tato kategorie efektivního velkého (ale ne maximálně velkého) není užitečná jen a pouze pro dosažení MT výkonu. Takovéto jádro by mělo době fungovat i například v mobilních procesorech. Je proto možné, že i Intel vyrobí nějaké čipy, které budou mít jen jádra Gracemont bez velkých jader Golden Cove. To by mohla být velmi zajímavá CPU do levných notebooků a pro pasivní chlazení. Zatím ale nemáme zprávy o tom, zda a na kdy Intel takové SoC plánuje.

Galerie: Efficient Core procesorů Alder Lake, architektura Gracemont

Zdroje: Intel, AnandTech (1, 2)