Největší revize architektury instrukční sady ARM za posledních deset let je zde – ARMv9 – s integrovaným SVE2 a dalšími bezpečnostními funkcemi.
Dnes dříve v rámci akce Vision Day společnost ARM zveřejnila některé podrobnosti o své nové architektuře ARMv9, o které společnost očekává, že bude v tomto desetiletí použita ve více než 300 miliardách čipů.
Poslední velká revize ARM ISA byla v8, která byla představena v říjnu 2011 s 64bitovou instrukční sadou AArch64. ARM však v průběhu let rozšířil ARMv8 o nové funkce, jako je Memory Tagging v ARMv8.5. S ARMv9 je společnost nadále používá AArch64 jako základní instrukční sadu, ale rozšířila ji o nové funkce zaměřené na zlepšení bezpečnosti a výkon.
Podle ARM jsou zde hlavní nové funkce architektury ARMv9-A:
- SVE2: rozšíření výhod škálovatelných vektorů na mnoho dalších případů použití
- Realm Management Extension (RME): rozšíření Confidential Compute on Arm platforem na všechny vývojáře.
- BRBE: poskytování profilovacích informací, jako je Auto FDO
- Embedded Trace Extension (ETE) a Trace Buffer Extension (TRBE): vylepšené možnosti sledování pro Armv9
- TME: podpora hardwarové transakční paměti pro architekturu Arm
Chcete-li se hlouběji ponořit do změn na vysoké úrovni přicházejících s ARMv9, doporučuji přečíst si zprávy Andrei Frumusanu na adrese AnandTech, ale poskytnu souhrn klíčových změn, o kterých byste měli vědět.
NEON následován SVE2
NEON je pokročilé rozšíření architektury jedné instrukce s více daty (SIMD). SIMD zde označuje jednu instrukci pracující s více datovými položkami paralelně. Tyto datové položky jsou organizovány do registrů, které obsahují vektory bitů.
Scalable Vector Extensions neboli SVE je rozšířením ARMv8.2 nebo novější, které rozšiřuje vektorové zpracování schopnost AArch64 řešit výpočetní požadavky úloh a strojů s vysokým výkonem (HPC) učení se. Důležité je, že také umožňuje délky vektorového registru mezi 128 až 2048 bity. Z hlediska vývoje softwaru je výhodou proměnné délky vektorového registru to, že kód stačí zkompilovat pouze jednou, aby bylo možné plně využít výhod budoucích CPU s delšími vektorovými registry. Podobně lze tento kód spouštět také na CPU s menším počtem spouštěcích kanálů SIMD, jako jsou zařízení IoT.
Protože SVE bylo zaměřeno spíše na pracovní zátěže HPC a také nebylo tak univerzální instrukční sadou jako NEON, ARM představil SVE2 na začátku roku 2019, aby tyto problémy vyřešil. SVE2 přidal nové instrukce zaměřené na pracovní zátěže DSP, které stále spoléhají na NEON. Nyní s ARMv9 je SVE2 nástupcem NEON jako základní funkce procesorů ARMv9.
Vylepšení strojového učení
ARM vidí, že úlohy strojového učení jsou v příštím desetiletí stále populárnější, a to je důvod předchozí revize ARMv8 zavedl nové instrukce násobení matic. To budou základní funkce procesorů ARMv9, které umožní menší rozsah pracovních zátěží ML spouštět přímo na CPU místo vyhrazených akcelerátorů. Je zřejmé, že provozování pracovních zátěží ML na vyhrazených akcelerátorech je žádoucí, pokud preferujete rychlý výkon nebo energetickou účinnost, ale není to vždy možné na každém hardwaru.
Důvěrná výpočetní architektura ARMv9
Ve snaze zlepšit zabezpečení zavádí ARMv9 novou architekturu Confidential Compute Architecture (CCA). Tak jako AnandTech vysvětluje, že CCA společnosti ARM je posunem od současné situace se softwarovým balíkem, kdy zabezpečené aplikace běžící na zařízení musí důvěřovat operačnímu systému a hypervizoru, na kterém běží. Současný model zabezpečení je postaven na skutečnosti, že mohou monitorovat privilegovanější úrovně softwaru provádění méně privilegovaných softwarových vrstev, což může být problematické, když je operační systém nebo hypervizor kompromitován.
CCA tento problém řeší dynamickým vytvářením „říší“, což jsou bezpečná, kontejnerizovaná spouštěcí prostředí, která jsou neprůhledná pro operační systém nebo hypervizor. Aplikace v rámci „říší“ mohou potvrdit svou důvěryhodnost „správci sfér“, což je kód, který je zlomkem velikosti hypervizoru, který je nyní výhradně zodpovědný za přidělování zdrojů a plánování. Výhodou používání „říší“ je to, že je redukován řetězec důvěry, což umožňuje bezpečí aplikace spouštěné na jakémkoli zařízení bez ohledu na základní operační systém, který bude transparentní bezpečnostní problémy.
Zdroj: ARM. Přes: AnandTech.
Podle AnandTechARM přesně nepopsal, jak jsou „říše“ odděleny od operačního systému a hypervizoru, ale ano spekulují, že toto oddělení pramení z hardwarově podporovaných adresních prostorů, se kterými nelze interagovat navzájem.
Budoucí návrhy CPU a GPU ARM
Ačkoli to přímo nesouvisí s ARMv9, ARM sdílel svá předpokládaná očekávání výkonu pro budoucí návrhy CPU založené na verzi 9. Během příštích dvou generací návrhů jádra mobilních IP očekává ARM celkový nárůst výkonu IPC o 30 %. To znamená, že skutečný generační nárůst výkonu činí cca 14 %, as AnandTech vysvětluje. Je zřejmé, že tempo zlepšování se poněkud zpomalilo oproti předchozím letům.
Viděli jsme, jak implementace CPU společností jako Qualcomm, Samsung a Huawei nedosahují očekávaných projekcí výkonu nových návrhů jádra ARM, skutečnost, na kterou ARM poukazuje na snímku, který podrobně popisuje, jak lze zlepšit výkon procesoru zlepšením cesty paměti, mezipamětí nebo frekvencí.
Zdroj: ARM. Přes: AnandTech.
Přesto ARMv9 slibuje, že přinese vítaná vylepšení výkonu, zabezpečení a strojového učení, až se na začátku roku 2022 dostanou do komerčních zařízení nové CPU založené na ISA.
Pokud jde o budoucí GPU Mali, ARM prozradil, že pracuje na technologiích, jako je stínování s proměnnou rychlostí (VRS) a sledování paprsků. Tyto funkce se staly populární mezi špičkovým hardwarem PC GPU a devátou generací videoherních konzolí, jako je např. PlayStation 5 od Sony a Microsoft Xbox Series X/S.
Vybrané obrázky: ARM via AnandTech