Salta al contingut

AMX, Advanced Matrix Extensions

Referència d'arquitecturaFeex

També anomenat AMX, AMX (Advanced Matrix Extensions)

Intel AMX afegeix capacitats de computació de matrius basades en tessel·les a x86. AMX-TILE i les extensions aritmètiques tenen bits de capacitat separats, i el SO ha de gestionar l'estat substancial de les tessel·les.

El que cal saber

Intel AMX afegeix capacitats de computació de matrius basades en tessel·les a x86. AMX-TILE i les extensions aritmètiques tenen bits de capacitat separats, i el SO ha de gestionar l'estat substancial de les tessel·les.

Com funciona

AMX utilitza registres de tessel·la bidimensionals configurats en lloc dels vectors YMM/ZMM ordinaris. La configuració de tessel·les descriu les formes actives, mentre que les extensions aritmètiques com ara AMX-INT8 o AMX-BF16 defineixen operacions de matriu particulars i formats numèrics. El programari empaqueta dades i tria formes vàlides sota els límits de paleta enumerats.

On és útil

Una biblioteca de matrius pot descompondre un nucli compatible en càrregues de tessel·les, operacions de producte escalar i emmagatzematges de tessel·les. El cost d'empaquetament, les dimensions de la matriu i la localitat de memòria cau poden dominar les càrregues de treball petites o irregulars. El maquinari de tessel·les no fa que tots els operadors de xarxes neuronals siguin aptes per a l'acceleració.

Com comprovar el suport i l'habilitació

Comproveu AMX-TILE i cada extensió aritmètica necessària a la fulla 7 de CPUID, enumereu els límits de tessel·les i confirmeu l'estat habilitat pel SO. A Linux, les aplicacions que utilitzen dades dinàmiques de tessel·les han de seguir el flux documentat d'ARCH_REQ_XCOMP_PERM; el suport i els bits de XCR0 per si sols no són suficients.

La disponibilitat de maquinari és només el primer pas. El controlador, l'entorn d'execució, el proveïdor d'execució, els operadors admesos i el format numèric han de coincidir amb l'aplicació. Inspeccioneu la selecció real de dorsal i l'alternativa en lloc de suposar que una etiqueta d'IA significa que tots els models s'acceleren.

El que la característica no estableix

AMX no significa AVX-512, una NPU general ni tots els formats aritmètics d'AMX. Un bit de CPU per si sol no estableix el permís del procés ni un estat suficient de la pila de senyals. Unes formes de tessel·la no compatibles o la manca de permís del SO poden fallar fins i tot en una màquina amb capacitat AMX.

Compatibilitat i rendiment a la pràctica

Compareu càrregues de treball completes sota condicions establertes, incloent-hi la compilació, les transferències i els operadors no admesos. Les operacions per segon màximes depenen de la precisió i dels supòsits de recompte. No són un substitut de la latència mesurada, el rendiment, l'energia o la precisió del model.

Una llista de verificació pràctica

  1. Enregistreu el model exacte de processador o de plataforma i les versions d'aplicació, SO i entorn d'execució implicades. Conserveu la redacció de l'error o del requisit real.
  2. Comproveu la referència del fabricant per a aquest model exacte, i després inspeccioneu la capacitat efectiva i l'estat habilitat en l'entorn on s'executa el programa.
  3. Compareu cada requisit del binari o dorsal seleccionat. Una característica amb un nom similar, un àlies o una etiqueta de tecnologia àmplia no és suficient.
  4. Confirmeu que l'aplicació ha seleccionat la implementació prevista. Utilitzeu els seus diagnòstics documentats i una alternativa compatible quan no es compleixin els requisits.
  5. Feu un únic canvi admès a la vegada i repetiu la mateixa càrrega de treball. Manteniu disponibles la configuració original i la via de recuperació.

Si la característica apareix a la llista però el programari no la pot utilitzar

Comenceu pel component exacte que falla. Una base de dades de maquinari descriu la capacitat registrada; el sistema operatiu o l'hipervisor poden exposar un entorn efectiu diferent. Un error d'instrucció il·legal també requereix investigar la instrucció defectuosa real i la compilació del binari, perquè una corrupció o una instrucció no admesa no relacionada poden produir un símptoma similar.

Instal·leu la versió d'aplicació, controlador o entorn d'execució admesa per a la plataforma exacta, i utilitzeu la compilació base o alternativa documentada pel fabricant si cal. Una actualització de programari no pot crear una instrucció que li manqui al processador. Els canvis de microprogramari i de polítiques de seguretat han de seguir el procediment del fabricant del sistema i un pla de recuperació en lloc d'una recepta genèrica d'optimització.

Fonts i abast d'aquesta explicació

Intel 64 and IA-32 Architectures Software Developer's Manual · Linux kernel: using XSTATE features in user space

Aquestes referències estableixen el comportament arquitectònic i els requisits de programari. No verifiquen de manera independent cada valor de característica en una pàgina de model de maquinari enllaçada. Per al suport de models, utilitzeu l'evidència del fabricant d'aquesta pàgina i comproveu la configuració efectiva del sistema. Aquest article no proporciona cap data de prova de referència, certificació o revisió independent.

Fonts i verificació

Propietat editorial: Feex. No s'ha registrat cap data de revisió independent. Com investiguem.

  • Intel 64 and IA-32 Architectures Software Developer's Manual · Els volums 1 i 2 descriuen les famílies d'instruccions anomenades i CPUID; el volum 3 descriu l'estat, la paginació, VMX i els controls de protecció. La documentació d'arquitectura no estableix el suport per a un model en particular.
  • Linux kernel: using XSTATE features in user space · Estat vectorial habilitat pel SO, estat de tessel·les habilitat dinàmicament, requisits de pila de senyals i flux de permisos AMX. El comportament específic de Linux no és una promesa sobre un altre SO.

Ha estat útil aquest article?

Un sí o un no és suficient. Trieu un motiu si voleu, o afegiu una breu nota.

Ha estat útil aquest article?