Direkt zum Inhalt

FMA und FMA3

Architektur-ReferänzFeex

Au gnennt FMA, FMA3

FMA berächnet e Gleitkomma-Multiplikation und -Addition mit einere einzige finale Rundig. FMA3 bezieht sich uf d x86-Fused-Multiply-Add-Befehlsfamilie mit drüü Operande; si wird separat vo AVX2 uufzellt.

Was du wüsse muesch

FMA berächnet e Gleitkomma-Multiplikation und -Addition mit einere einzige finale Rundig. FMA3 bezieht sich uf d x86-Fused-Multiply-Add-Befehlsfamilie mit drüü Operande; si wird separat vo AVX2 uufzellt.

Wie 's funktioniert

E Fused-Operation berächnet es Produkt und e Summe als eini einzelni arithmetischi Operation, bevor ufs Ziilformat grundet wird. Das cha en Biitrag erhalte, wo verlore gienge, wenn d Multiplikation zersch grundet würdi. D Befehlsforme 132, 213 und 231 wähled us, weli Operande s Produkt, de Summand und s überschribene Ziil liferid. Skalari und packti Forme händ es unterschidlichs Lane-Verhalte.

Wo s nützlich isch

Polynomevaluation, Matrixmultiplikation und digitali Filter chönd FMA nutze, um arithmetischi Operatione z kombiniere. S Fused-Resultat cha sich vonere Variante underscheide, wo absichtlich zwei separati Operatione bruucht. Compiler-Contraction-Iistellige und Aafordrige a di numerischi Reproduzierbarkeit spilled dorum näbed de Verfüegbarkeit vo de Befehl e wichtigi Rolle.

Wie mer Unterstützig und Aktivierig überprüeft

Für d VEX-FMA3-Befehl überprüef CPUID.01H:ECX Bit 12 zäme mit de vollständige AVX-OS-State-Prüefige. Wenn EVEX-Forme bruucht wärded, prüef di zuesätzleche AVX-512-Subsets und de Status, wo vo däne Forme verlangt wärded. Kontrollier d Compiler-Flags, wenn sich numerischi Resultat nach eme Rebuild veränderid.

S Programm muess sowohl en passendi Implementierig enthalte als au die zur Laufziit uswähle. Hardware-Abfrag, OS-aktivierte Regischter-Status und d kompilierte Baseline vor Binärdatei sind separati Prüefige. E virtuelli Maschine cha absichtlich weniger Features zeige als ihre Host, und en Container füegt de Host-CPU keini Befähl dezue.

Was s Feature nid leischdet

FMA bedüütet nöd, dass jede Gleitkommausdruck mit zuesätzlecher Gnauigkeit berächnet wird, und garantiert keni identische Resultat über verschidnigi Compiler-Iistellige hiwäg. FMA4 isch e anderi Befehlsfamilie. Weder AVX no AVX2 eleige bewiist d Understützig für FMA3.

Kompatibilität und Leischtig i de Praxis

Miss di ganzi Arbetslascht mit repräsentative Date. Breiteri Vektore chönd d Befehlszahl verringere, lönd aber de Speicherverchehr, d Synchronisierig oder d Konvertierigskoschte villicht unberüehrt. Befehlslatenz, Durchsatz und s Stromverhalte hanget vo de genaue Mikroarchitektur und de Betriibsbedingige ab.

E praktischi Checklischte zur Überprüefig

  1. Erfass s genaue Prozässer- oder Plattform-Modäll und d Version vo de beteiligte Aawändig, vom OS und vor Runtime. Bhalt de Wortluut vom eigentliche Fehler oder vor Aaforderig unveränderet bi.
  2. Prüef d Herschteller-Referänz für das exakte Modäll, und kontrollier dänn di effektivi Fähigkeit und de aktivierte Status i de Umgäbig, wo s Programm lauft.
  3. Verglich jedi Aaforderig vo de uusgwählte Binärdatei oder vom Backend. En ähnlich luutends Feature, en Alias oder e breiti Technologiebezeichnig länged nid.
  4. Beschtätig, dass d Aawändig di vorgsehni Implementation uusgwählt het. Bruuch däre iri dokumentierte Diagnosefunktion und en unterstützte Fallback, wänn d Aaforderige nid erfüllt sind.
  5. Mach jewiils nume ein unterstützti Änderig uf z Mol und widerhol di gliich Arbetslascht. Bhalt di ursprünglichi Konfiguration und en Wäg zur Wiederherschtellig barat.

Wänn s Feature ufgführt isch, d Software s aber nid cha bruuche

Fang bim exakt fählende Teil aa. E Hardware-Datebank beschriibt erfasstig Fähigkeite; s Betriibssyschtem oder de Hypervisor cha e anderi effektivi Umgäbig zeige. En Illegal-Instruction-Fehler bruucht au e Nachforschig zum eigentliche fählerhafte Befähl und Binär-Build, will e Beschädigung oder en unbeteiligte, nid unterstützte Befähl es ähnlichs Symptom erzüüge cha.

Inschtallier d Aawändig, de Triiber oder d Runtime-Version, wo für di exakti Plattform unterstützt wird, und bruuch bi Bedarf d Baseline oder de Fallback-Build gmäss Herschteller-Dokumentation. Es Software-Update cha kei Befähl erzüüge, wo em Prozässer fählt. Firmware- und Sicherheitsrichtlinie-Änderige sötted em Verfahre vom Syschtemherschteller und eme Wiederherschtelligsplan folge, statt eme allgemeine Optimierigs-Rezept.

Quelle und Umfang vo däre Erchlärig

Intel 64 and IA-32 Architectures Software Developer's Manual · Linux-Kernel: Verwändig vo XSTATE-Features im User Space

Die Referänze leitid s architektonische Verhalte und d Software-Aaforderige fescht. Si überprüefed nid jede Feature-Wärt uf ere verlinkte Hardware-Modällsiite unabhängig. Für d Modällunterstützig sött mer d Herschteller-Nachwiis vo däre Siite bruuche und di effektivi Syschtemkonfiguration prüefe. Dä Artikel liferet kei Benchmark, ke Zertifizierig und keis unabhängigs Prüefdatum.

Quelle und Verifikation

Redaktionelli Verantwortig: Feex. Es isch kes unabhängigs Überprüefigsdatum erfasst. Wie mir recherchiered.

Isch dä Artikel nützlich gsi?

Es Ja oder Nei längt. Wähl en Grund us, wänn du wotsch, oder schryb e churzi Notiz.

Isch dä Artikel nützlich gsi?