FMA4

読み:エフエムエイ・フォー
外語:FMA4: four-operand Fused Multiply/Add 英語
品詞:名詞

オペランドが4つあるFMA(積和演算)命令で、特にx86に搭載されている命令セットの一部をいう。

目次

元々は、IntelIntel AVXで導入を予定していた命令の一部であった。しかし、命令長が長くなること、そして命令デコーダーが肥大化することを懸念し、最終的に不採用として3オペランドFMA(FMA3)を実装した。

これに対してAMDは、SSE5をキャンセルしてIntel AVXを採用するのにあわせ、このIntelが不採用とした4オペランドFMAをBulldozerマイクロアーキテクチャーから採用することにした(その代わりFMA3の実装は次の製品に持ち越し)。

オペコードはAMDが独自に確保するのではなく、当初予定されていたIntelのそれと完全に同じものを採用した。

しかしIntelが遂にFMA4をサポートしなかったこともあり、殆ど使われていなかったこともあって、その後AMDが発表したZenマイクロアーキテクチャーからは削除された。

VEX

VEXを使っての符号化でのみ動作する命令である。

VEX.L=1で、ymmおよびm256命令にできる命令が多い。

またすべての命令について、VEX.Wフィールドで、オペランド3とオペランド4の機能を入れ替えることができる。

符号

66 0F 3A xx /r /is4相当の機械語をVEX符号化したものを使う。

ModR/Mに続いて/is4があるのが特徴で、このバイトの上位4ビットでもう一つのXMMレジスターを指定できる。

機能の有無判別

EAX=80000000HでCPUID命令を実行し、返却値EAXの最上位ビットが1となる拡張CPUID対応環境で、かつEAX=80000001HでCPUIDを実行した結果得られたECXレジスターのビット16が1のとき、FMA4に対応している。

Intelでは対応製品がない。AMDはBulldozer以降で対応する。

命令

  • $0 = $1×$2 + $3
    • vfmaddps xmm, xmm, xmm/m128, xmm/m128
    • vfmaddps ymm, ymm, ymm/m256, ymm/m256
    • vfmaddpd xmm, xmm, xmm/m128, xmm/m128
    • vfmaddpd ymm, ymm, ymm/m256, ymm/m256
    • vfmaddss xmm, xmm, xmm/m32, xmm/m32
    • vfmaddsd xmm, xmm, xmm/m64, xmm/m64
  • $0 = $1×$2 − $3
    • vfmsubps xmm, xmm, xmm/m128, xmm/m128
    • vfmsubps ymm, ymm, ymm/m256, ymm/m256
    • vfmsubpd xmm, xmm, xmm/m128, xmm/m128
    • vfmsubpd ymm, ymm, ymm/m256, ymm/m256
    • vfmsubss xmm, xmm, xmm/m32, xmm/m32
    • vfmsubsd xmm, xmm, xmm/m64, xmm/m64
  • $0 = -($1×$2) + $3
    • vfnmaddps xmm, xmm, xmm/m128, xmm/m128
    • vfnmaddps ymm, ymm, ymm/m256, ymm/m256
    • vfnmaddpd xmm, xmm, xmm/m128, xmm/m128
    • vfnmaddpd ymm, ymm, ymm/m256, ymm/m256
    • vfnmaddss xmm, xmm, xmm/m32, xmm/m32
    • vfnmaddsd xmm, xmm, xmm/m64, xmm/m64
  • $0 = -($1×$2) − $3
    • vfnmsubps xmm, xmm, xmm/m128, xmm/m128
    • vfnmsubps ymm, ymm, ymm/m256, ymm/m256
    • vfnmsubpd xmm, xmm, xmm/m128, xmm/m128
    • vfnmsubpd ymm, ymm, ymm/m256, ymm/m256
    • vfnmsubss xmm, xmm, xmm/m32, xmm/m32
    • vfnmsubsd xmm, xmm, xmm/m64, xmm/m64
用語の所属
Intel AVX
関連する用語
FMA3

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club