Cea mai mare revizuire a arhitecturii setului de instrucțiuni de la ARM într-un deceniu este aici - ARMv9 - cu SVE2 la bord și alte caracteristici de securitate.
Mai devreme astăzi, ca parte a evenimentului său Vision Day, ARM a dezvăluit câteva detalii despre noua sa arhitectură ARMv9, despre care compania se așteaptă să fie utilizată în peste 300 de miliarde de cipuri în acest deceniu.
Ultima revizuire majoră a ISA ARM a fost v8, care a fost introdusă în octombrie 2011 cu setul de instrucțiuni AArch64 pe 64 de biți. Cu toate acestea, ARM a extins ARMv8 de-a lungul anilor cu noi funcții, cum ar fi Memory Tagging în ARMv8.5. Cu ARMv9, compania este continuând să folosească AArch64 ca set de instrucțiuni de bază, dar l-a extins cu noi funcții menite să îmbunătățească securitatea și performanţă.
Potrivit ARM, iată noile caracteristici majore ale arhitecturii ARMv9-A:
- SVE2: extinderea beneficiului vectorilor scalabili la mai multe cazuri de utilizare
- Extensie de gestionare a tărâmului (RME): extinderea Confidential Compute pe platformele Arm la toți dezvoltatorii.
- BRBE: furnizarea de informații de profilare, cum ar fi Auto FDO
- Extensie de urmărire încorporată (ETE) și Extensie tampon de urmărire (TRBE): capabilități de urmărire îmbunătățite pentru Armv9
- TME: suport hardware de memorie tranzacțională pentru arhitectura Arm
Pentru o scufundare mai profundă în schimbările de nivel înalt care vin cu ARMv9, vă recomand să citiți reportajul lui Andrei Frumusanu la adresa AnandTech, dar voi oferi un rezumat al modificărilor cheie de care ar trebui să fii conștient.
NEON succedat de SVE2
NEON este o extensie avansată de arhitectură SIMD (Single Instruction Multiple Data). SIMD aici se referă la o singură instrucțiune care operează pe mai multe elemente de date în paralel. Aceste elemente de date sunt organizate în registre care dețin vectori de biți.
Scalable Vector Extensions, sau SVE, este o extensie la ARMv8.2 sau o versiune ulterioară care extinde procesarea vectorială capacitatea AArch64 de a răspunde cerințelor de calcul ale sarcinilor și mașinii de calcul de înaltă performanță (HPC) învăţare. Important este că permite, de asemenea, lungimi de registru vectorial între 128 și 2048 de biți. Din punct de vedere al dezvoltării software, avantajul unei lungimi de registru vectorial variabil este că codul trebuie compilat o singură dată pentru a profita din plin de viitoarele procesoare cu registre vectoriale mai lungi. În mod similar, acel cod poate fi rulat și pe procesoare cu mai puține conducte de execuție SIMD, cum ar fi cele din dispozitivele IoT.
Întrucât SVE era destinat mai mult la sarcinile de lucru HPC și nu era, de asemenea, un set de instrucțiuni la fel de versatil ca NEON, ARM a introdus SVE2 la începutul anului 2019 pentru a rezolva aceste probleme. SVE2 a adăugat noi instrucțiuni care vizează sarcinile de lucru DSP care se bazează în continuare pe NEON. Acum, cu ARMv9, SVE2 îi urmează lui NEON ca caracteristică de bază a procesoarelor ARMv9.
Îmbunătățiri ale învățării automate
ARM vede că sarcinile de lucru de învățare automată devin din ce în ce mai populare în următorul deceniu, motiv pentru care revizuirile anterioare ale ARMv8 a introdus noi instrucțiuni de multiplicare matriceală. Acestea vor fi caracteristicile de bază ale procesoarelor ARMv9, permițând încărcăturilor de lucru ML cu un domeniu mai mic să ruleze direct pe procesor, mai degrabă decât acceleratoare dedicate. Evident, rularea sarcinilor de lucru ML pe acceleratoare dedicate este de dorit atunci când se preferă performanța rapidă sau eficiența energetică, dar nu este întotdeauna posibil să se facă acest lucru pe tot hardware-ul.
Arhitectura de calcul confidențială a ARMv9
În efortul de a îmbunătăți securitatea, ARMv9 introduce o nouă arhitectură de calcul confidențială (CCA). La fel de AnandTech explică, CCA-ul ARM este o schimbare față de situația actuală a stivei de software, în care aplicațiile securizate care rulează pe un dispozitiv trebuie să aibă încredere în sistemul de operare și hypervisor pe care rulează. Modelul actual de securitate se bazează pe faptul că nivelurile de software mai privilegiate pot monitoriza execuția unor niveluri software mai puțin privilegiate, care pot fi problematice atunci când sistemul de operare sau hypervisor sunt compromisă.
Modul în care CCA rezolvă această problemă este prin crearea dinamică a „tărâmurilor”, care sunt medii de execuție sigure, containerizate, care sunt opace pentru sistemul de operare sau hypervisor. Aplicațiile din „tărâmuri” își pot atesta încrederea unui „manager de tărâm”, cod care este o fracțiune din dimensiunea unui hypervisor, care este acum singurul responsabil pentru alocarea și programarea resurselor. Avantajul utilizării „tărâmurilor” este că lanțul de încredere este redus, permițând siguranța aplicațiile să fie rulate pe orice dispozitiv, indiferent de sistemul de operare subiacent pentru care va fi transparent probleme de securitate.
Sursa: ARM. Prin intermediul: AnandTech.
Conform AnandTech, ARM nu a detaliat exact modul în care „tărâmurile” sunt separate de sistemul de operare și hypervisor, dar acestea speculăm că această separare provine din spațiile de adrese susținute de hardware cu care nu pot interacționa reciproc.
Viitoarele proiecte ARM CPU și GPU
Deși nu are legătură directă cu ARMv9, ARM și-a împărtășit așteptările de performanță proiectate pentru viitoarele proiecte de procesoare bazate pe v9. Pe parcursul următoarelor două generații de design-uri de bază IP pentru mobil, ARM se așteaptă la o creștere totală de 30% în performanța IPC. Asta înseamnă că creșterea generațională reală a performanței se ridică la aproximativ 14%, așa cum AnandTech explică. În mod clar, rata de îmbunătățire a încetinit oarecum comparativ cu anii anteriori.
Am văzut cum implementările CPU de către companii precum Qualcomm, Samsung și Huawei nu ating proiecțiile de performanță așteptate. a noilor modele de bază ARM, un fapt pe care ARM îl subliniază într-un slide care detaliază modul în care performanța procesorului poate fi îmbunătățită prin îmbunătățirea căii de memorie, cache-urile sau frecvențele.
Sursa: ARM. Prin intermediul: AnandTech.
Totuși, ARMv9 promite să aducă îmbunătățiri binevenite în ceea ce privește performanța, securitatea și învățarea automată atunci când noile procesoare bazate pe ISA sunt livrate în dispozitive comerciale la începutul anului 2022.
În ceea ce privește viitoarele GPU-uri din Mali, ARM a dezvăluit că lucrează la tehnologii precum umbrirea cu rată variabilă (VRS) și ray tracing. Aceste caracteristici au devenit populare în rândul hardware-ului GPU pentru PC de înaltă calitate și în a noua generație de console de jocuri video, cum ar fi PlayStation 5 de la Sony și Xbox Series X/S de la Microsoft.
Credite de imagine prezentate: ARM via AnandTech