Architektúra ARMv9 prináša SVE2 a nové bezpečnostné funkcie

Najväčšia revízia architektúry inštrukčnej sady ARM za posledných desať rokov je tu – ARMv9 – so zabudovaným SVE2 a ďalšími bezpečnostnými funkciami.

Začiatkom dnešného dňa v rámci podujatia Vision Day spoločnosť ARM zverejnila niektoré podrobnosti o svojej novej architektúre ARMv9, o ktorej spoločnosť očakáva, že bude v tomto desaťročí použitá vo viac ako 300 miliardách čipov.

Posledná veľká revízia ARM ISA bola v8, ktorá bola predstavená v októbri 2011 so 64-bitovou inštrukčnou sadou AArch64. ARM však v priebehu rokov rozšíril ARMv8 o nové funkcie, ako je Memory Tagging v ARMv8.5. S ARMv9 je spoločnosť naďalej používa AArch64 ako základnú inštrukčnú sadu, ale rozšírila ju o nové funkcie zamerané na zlepšenie bezpečnosti a výkon.

Podľa ARM sú tu hlavné nové funkcie architektúry ARMv9-A:

  • SVE2: rozšírenie výhod škálovateľných vektorov na mnoho ďalších prípadov použitia
  • Realm Management Extension (RME): rozšírenie platformy Confidential Compute on Arm na všetkých vývojárov.
  • BRBE: poskytovanie profilovacích informácií, ako napríklad Auto FDO
  • Embedded Trace Extension (ETE) a Trace Buffer Extension (TRBE): vylepšené možnosti sledovania pre Armv9
  • TME: podpora hardvérovej transakčnej pamäte pre architektúru Arm
Zdroj: ARM. Cez: AnandTech.

Pre hlbší ponor do zmien na vysokej úrovni, ktoré prichádzajú s ARMv9, odporúčam prečítať si správu Andrei Frumusanu na adrese AnandTech, ale poskytnem súhrn kľúčových zmien, o ktorých by ste mali vedieť.

NEON nasledovaný SVE2

NEON je pokročilé rozšírenie architektúry s jednou inštrukciou a viacerými dátami (SIMD). SIMD tu označuje jednu inštrukciu pracujúcu na viacerých dátových položkách paralelne. Tieto dátové položky sú usporiadané do registrov, ktoré obsahujú vektory bitov.

Scalable Vector Extensions alebo SVE je rozšírenie ARMv8.2 alebo novšieho, ktoré rozširuje vektorové spracovanie schopnosť AArch64 riešiť výpočtové požiadavky úloh a stroja s vysokým výkonom (HPC) učenie. Dôležité je, že umožňuje aj dĺžky vektorového registra medzi 128 až 2048 bitmi. Z hľadiska vývoja softvéru je výhodou variabilnej dĺžky vektorového registra to, že kód stačí skompilovať iba raz, aby sa naplno využili budúce CPU s dlhšími vektorovými registrami. Podobne je možné tento kód spustiť aj na procesoroch s menším počtom kanálov vykonávania SIMD, ako sú tie v zariadeniach internetu vecí.

Keďže SVE bol zameraný skôr na pracovné zaťaženie HPC a tiež nebol tak všestrannou inštrukčnou sadou ako NEON, spoločnosť ARM predstavila SVE2 začiatkom roka 2019 na riešenie týchto problémov. SVE2 pridal nové pokyny zamerané na pracovné zaťaženie DSP, ktoré sa stále spolieha na NEON. Teraz s ARMv9, SVE2 nahrádza NEON ako základnú funkciu procesorov ARMv9.

Vylepšenia strojového učenia

ARM vidí, že pracovné zaťaženie strojového učenia sa v nasledujúcom desaťročí stáva čoraz populárnejším, a to je dôvod predchádzajúce revízie ARMv8 zaviedol nové inštrukcie na násobenie matíc. Toto budú základné funkcie procesorov ARMv9, ktoré umožnia, aby pracovné zaťaženie ML s menším rozsahom bežalo priamo na procesore, a nie na vyhradených akcelerátoroch. Je zrejmé, že prevádzka pracovných zaťažení ML na vyhradených akcelerátoroch je žiaduca, ak uprednostňujete rýchly výkon alebo energetickú účinnosť, ale nie vždy je to možné na každom hardvéri.

Zdroj: ARM. Cez: AnandTech.

Dôverná výpočtová architektúra ARMv9

V snahe zlepšiť bezpečnosť, ARMv9 predstavuje novú dôvernú výpočtovú architektúru (CCA). Ako AnandTech vysvetľuje, že CCA od ARM je posunom od súčasnej situácie softvérového balíka, kde musia zabezpečené aplikácie bežiace na zariadení dôverovať OS a hypervízoru, na ktorom bežia. Súčasný model bezpečnosti je založený na skutočnosti, že privilegovanejšie úrovne softvéru môžu monitorovať spustenie menej privilegovaných softvérových vrstiev, čo môže byť problematické, keď sú OS alebo hypervízor kompromitovaný.

CCA rieši tento problém dynamickým vytváraním „realms“, čo sú bezpečné kontajnerové prostredia na vykonávanie, ktoré sú nepriehľadné pre OS alebo hypervízor. Aplikácie v „sférach“ môžu potvrdiť svoju dôveryhodnosť „správcovi realmov“, kódu, ktorý je zlomkom veľkosti hypervízora, ktorý je teraz výlučne zodpovedný za prideľovanie zdrojov a plánovanie. Výhodou používania „sfér“ je, že reťazec dôvery je znížený, čo umožňuje bezpečnosť aplikácie, ktoré sa majú spúšťať na akomkoľvek zariadení bez ohľadu na základný operačný systém, ktorý bude transparentný bezpečnostné otázky.

Zdroj: ARM. Cez: AnandTech.

Podľa AnandTechARM presne neuviedol, ako sú „realmy“ oddelené od OS a hypervízora, ale áno špekulujú, že toto oddelenie pochádza z hardvérovo podporovaných adresných priestorov, s ktorými nie je možné interagovať navzájom.

Budúce návrhy CPU a GPU ARM

Hoci to priamo nesúvisí s ARMv9, ARM zdieľal svoje predpokladané výkonové očakávania pre budúce návrhy CPU založené na verzii 9. Počas nasledujúcich dvoch generácií návrhov jadra mobilných IP ARM očakáva celkový nárast výkonu IPC o 30 %. To znamená, že skutočný generačný nárast výkonu predstavuje približne 14 %, as AnandTech vysvetľuje. Je zrejmé, že tempo zlepšovania sa trochu spomalilo v porovnaní s predchádzajúcimi rokmi.

Videli sme, ako implementácie CPU spoločnosťami ako Qualcomm, Samsung a Huawei nedosahujú očakávaný výkon. nových návrhov jadra ARM, skutočnosť, na ktorú ARM poukazuje na snímke, ktorá podrobne popisuje, ako možno zlepšiť výkon procesora zlepšením cesty pamäte, vyrovnávacej pamäte alebo frekvencií.

Zdroj: ARM. Cez: AnandTech.

Napriek tomu ARMv9 sľubuje, že prinesie vítané vylepšenia výkonu, bezpečnosti a strojového učenia, keď sa nové CPU založené na ISA dostanú do komerčných zariadení začiatkom roka 2022.

Čo sa týka budúcich GPU Mali, spoločnosť ARM prezradila, že pracuje na technológiách, ako je tieňovanie s variabilnou rýchlosťou (VRS) a sledovanie lúčov. Tieto funkcie sa stali populárnymi medzi špičkovým hardvérom PC GPU a deviatou generáciou videoherných konzol ako napr. PlayStation 5 od Sony a Xbox Series X/S od Microsoftu.

Zdroj: ARM. Cez: AnandTech.

Odporúčané obrazové kredity: ARM via AnandTech