Zatím nejlepší jádro RISC-V. SiFive Performance P650 má dohnat Cortex-A77, ale bez SIMD

7. 12. 2021

Sdílet

 Autor: SiFive
RISC-V se rychle vyvíjí, SiFive teď uvádí architekturu, slibující výkon schopný konkurovat velkým jádrům ARM Cortex. Pořád ale má slabiny, ARM ještě asi dost dlouho bude mít náskok.

Procesory s otevřenou architekturou RISC-V se zase pozvednou ve výkonu a přiblíží se architektuře ARM, které pomalu vytvářejí čím dál větší konkurenci. Lídr ve vývoji jader RISC-V SiFive teď oznámil novou architekturu SiFive Performance P650, která se prý má dostat na dostřel od dnešních velkých jader ARM, čímž by se RISC-V mohl stát náhradou ARMu prakticky ve všech oblastech CPU. Tedy aspoň podle SiFive, v praxi to bude složitější.

Je to necelý půlrok, co SiFive oznámila jádro Performance P550, s kterým spojovala trošku podobné přísliby. To však ještě mělo být protivníkem jen pro již prastarý Cortex-A75. Teď firma oznámila jeho další evoluci nazvanou SiFive Performance P650, která už vypadá jako o dost větší hrozba. Pokud firma nepábí, má už konkurovat Cortexu-A77, jenž je sám poměrně blízko dnes používanému Cortexu-A78 (pravda, ne jeho výkonnějšímu bratru Cortex-X1). ARM sice mezitím odskočil s výkonnějšími novými jádry generace ARMv9, která se brzy objeví v reálných čipech. Ale i tak to znamená, že se RISC-V dostává mnohem blíž, než z jaké dálky k nejvýkonnějším ARMům vzhlížel doteď.

Zatím nejvýkonnější RISC-V (od SiFive)

SiFive Performance S650 je out-of-order s třemi paralelními ALU, což jej řadí do štíhlejší kategorie, než je třeba AMD Zen nebo ty Cortexy-A77/A78 se čtyřmi ALU. Dekódování, issue a dispatch jsou ale stavěné na zpracování čtyř instrukcí za jeden cyklus. Pipeline procesoru má 13 stupňů, což má umožnit frekvenci až 2,7 GHz na 5nm procesu. Procesor má údajně „velký“ reorder buffer (ROB), tedy out-of-order okno pro přehazování instrukcí.

Ale reálné číslo není sděleno a asi nemusí být úplně vysoké na dnešní poměry. Nepřekvapilo by nás, kdyby počet instrukcí, který se do ROB vejde, byl stále jen dvouciferný. I ty tři ALU ostatně SiFive označuje jako „vysoký paralelismus“, i když bychom jako široká jádra asi označili spíš až návrhy se čtyřmi a více ALU).

Architektura SiFive Performance P650 schéma Architektura SiFive Performance P650, schéma (Zdroj: SiFive, via The Register)

Velikosti cache budou konfigurovatelné, takže výrobci čipů si budou moci vybrat mezi vyšším výkonem a menším jádrem. L1 instrukční a datové cache mohou mít 32 KB až 128 KB, jejich asociativita je údajně čtyřcestná (4-way). L2 cache má osmicestnou asociativitu – některé materiály uvádějí kapacitu 256 KB, ale je možné, že je možné zvolit i větší konfiguraci.

Celé CPU pak ještě bude mít také L3 cache o kapacitě 1 MB až 16 MB dle rozhodnutí návrháře čipu, přičemž všechny úrovně používají ECC. Tato L3 cache je sdílena všemi jádry, kterých budou procesory s jádry P650 obsahovat až 16. Paměťový řadič je možné mít až se čtyřmi kanály (šířka 256 bitů).

Architektura SiFive Performance P650 SoC Architektura SiFive Performance P650 - SoC (Zdroj: SiFive, via Heise.de)

~ 30 bodů v SPECint2006?

Jádro bude podle SiFive prý až o 40 % rychlejší při stejné frekvenci než jádro Performance P550 (což může být v nejlepších případech, ne nutně průměrné zlepšení IPC). Protože také dosahované frekvence mají být o něco vyšší, má celkový nárůst výkonu proti P550 být až o 50 %. Jádro by prý mohlo na 1 GHz frekvence dosahovat přes 11 bodů v SPECint2006. Při plánované frekvenci 2,7 GHz by to dělalo nějakých 30 bodů.

Což by bylo IPC někde nad úrovní Zenu nebo Haswellu, které ale běží na vyšších frekvencích (a stačil jim k tomu horší/starší proces). Nejlepší dnešní procesory (AMD Zen 3, Intel Alder Lake, Rocket Lake, Apple M1) mají dnes jednojádrové skóre v tomto benchmarku skóre jdoucí až k 70 bodům, takže k této špičce má ještě SiFive hodně daleko. Tyto údaje je ale třeba brát hodně orientačně.

Pořád bez SIMD

IP jader Performance P650 obsahuje už také různá kryptografická rozšíření a zajímavé je zejména, že podporují virtualizaci. Nicméně, a to je také hodně závažné, ale teď v negativním smyslu, toto jádro také přebírá hlavní slabinu jádra P550: nemá ještě vektorovou/SIMD jednotku. Instrukční sada je pořád jen RV64GBC, tj. bez SIMD rozšíření (to je značené písmenem „V“).

V tomto bodě ambice být smysluplnou konkurencí a plnohodnotnou náhradou za velká jádra ARM Cortex A77/78/710 selhávají, protože procesor bez podpory SIMD není vyhovující pro standardní PC nebo mobilní zařízení a podobná nasazení. I nasazení v serveru asi není moc reálné. Bez SIMD tak asi SiFive P650 zůstane pořád záležitostí pro embedded zařízení a použití v roli služebného jádra v různých řadičích a podobných aplikacích, kde třeba bude muset být doplněné nějakým koprocesorem nebo DSP.

Architektura SiFive Performance P650 Architektura SiFive Performance P650, vlastnosti (Zdroj: SiFive, via Phoronix)

Pokud byste si představovali, že vznikne nějaká deska typu Raspberry Pi nebo podobného typu, s níž bude moci RISC-V vyzkoušet jakýkoli uživatel, pak na SoC s jádry Performance P650 nepůjde založit ekvivalent užitečnějších pozdějších desek jako RPi 2, 3 a 4, ale jen něco jako původní RaspberryPi. To obsahovalo zastaralá jádra ARM11 (šlo ještě o předchůdce Cortexů, založeného na instrukční sadě ARMv6). Toto CPU bylo obecně hodně slabé, ale jeho největší slabinou byla právě absence SIMD instrukcí Neon, které přišly s Cortexy. Jakákoliv práce s multimédii na takovém CPU bude výrazně ztížená, přehrávání videa bude pravděpodobně odkázané na použití hardwarové akcelerace v GPU (dekódování videa bez SIMD potřebuje třeba i více jak 10× větší množství procesorového času).

Tato absence SIMD je politováníhodná, ale z pohledu firmy SiFive pochopitelná, Vektorové rozšíření „V“ totiž dlouho nebylo připravené a jeho dokončení bylo oznámeno až teď. V SiFive asi nechtěli do jádra uvádět nedokončenou instrukční sadu, protože by se mohlo po uvedení ukázat, že podpora není kompatibilní s výsledným standardem a tím s dalšími procesory. Byť jsou to ale legitimní důvody, nezmění se tím fakt, že je kvůli nim architektura Performance P650 výrazně limitovaná. Podpora SIMD je v x86 procesorech standardem přes 20 let, jakákoliv architektura aspirující na výkon a obecné použití mimo mikrořadiče a specifické úlohy by tyto operace měla nabízet. Nezbývá než doufat, že další jádra stavějící na základu P650 už budu vektorové rozšíření mít.

SiFive RISC V deska HiFive ilustrace 1600 RISC-V vývojářská deska HiFive od firmy SiFive. Obsahuje starší SoC s méně výkonným jádrem (Zdroj: SiFIve)

K reálným čipům je asi ještě daleko

Je také třeba upozornit, že SiFive patrně takto oznamuje jádra v dřívějším stádiu příprav, jeho uváděčky jsou proto více „vaporware“ než u ARMu. Ten nyní oznamuje nová jádra na jaře roku a z kraje následujícího už jsou v telefonech. SiFive říká, že jeho zákazníci budou teď slavně odhalená jádra mít k dispozici až v Q1 2022 v případě přednostních klientů, obecná dostupnost pak bude někde kolem poloviny roku 2022.

Takže nečekáme, že by tato jádra byla v reálných čipech do roka od svého nynějšího oznámení. Spíš až ke konci roku 2023, nebo možná spíš ještě později. Tudíž ona konkurenceschopnost, kterou firma prezentuje, může být trošku marketingově nadhodnocená. Protože jádro sice teď má (na papíře a když ignorujeme SIMD) na Cortex-A77, ale v době, kdy přijde na trh, už bude muset čelit nejen tomu Cortexu-A710Cortexu-X2, ale možná i jádrům o jednu či dvě generace dál.

bitcoin_skoleni

V tomto je ekosystém RISC-V pořád méně zralý a více ve stádiu rozvíjení se. Nicméně vedle těchto slibů do budoucna je architektura čím dál více nasazována i v praxi, takže té „vaporware“ příchuti by mělo být postupně čím dál méně.

Zdroje: SiFive, HPCWire, The Register, Heise.de, Phoronix