「FP8」の版間の差分

提供:MonoBook
編集の要約なし
編集の要約なし
 
1行目: 1行目:
'''FP8'''(えふぴーえいと)とは、[[ARM]]と[[Intel]]と[[NVIDIA]]の3社が共同で仕様を策定した「8ビットの浮動小数点数」である。
'''FP8'''(えふぴーえいと)とは、[[ARM]]と[[Intel]]と[[NVIDIA]]の3社が共同で仕様を策定した「8ビットの浮動小数点数」です。ホワイトペーパーでは「reduced precision floating-point」となっているので日本語訳は「[[低精度浮動小数点数]]」でいいと思う。


ホワイトペーパーでは「reduced precision floating-point」となっているので日本語訳は「[[低精度浮動小数点数]]」でいいと思う。
主にNVIDIAのHopperアーキテクチャ以降(H100など)でサポートされ、従来のFP16/BF16と比較して約2倍の処理速度を実現し、大規模言語モデル(LLM)や生成AIの学習・推論を高速化します。


== 形式 ==
== 形式 ==
11行目: 11行目:
* 仮数部の幅: 2ビット
* 仮数部の幅: 2ビット


E5M2は「指数5ビット」「仮数2ビット」の形式である。
E5M2は「指数5ビット」「仮数2ビット」の形式である。IEEE 754の16ビット形式である「[[FP16]]」の仮数部を10ビットから2ビットにしたものとなっている。「[[FP32]]と[[bfloat16]]」の関係と同じく「[[FP16]]とFP8は互換性がある」ということらしい。FP16で書かれた[[ソースコード]]を単純に文字列置換するだけで使えるのが利点らしい。E5M2は「[[勾配テンソル]]」に最適らしいぞ。
IEEE 754の16ビット形式である「[[FP16]]」の仮数部を10ビットから2ビットにしたものとなっている。
[[FP32]]と[[bfloat16]]」の関係と同じく「[[FP16]]とFP8は互換性がある」ということらしい。
FP16で書かれた[[ソースコード]]を単純に文字列置換するだけで使えるのが利点らしい。
E5M2は「[[勾配テンソル]]」に最適らしいぞ。


=== E4M3 ===
=== E4M3 ===
23行目: 19行目:


[[category: 浮動小数点数]]
[[category: 浮動小数点数]]
E4M3はE5M2よりダイナミックレンジが広い。
E4M3はE5M2よりダイナミックレンジが広い。E4M3は「[[重みテンソル]]」および「[[活性化テンソル]]」に最適らしいぞ。
E4M3は「[[重みテンソル]]」および「[[活性化テンソル]]」に最適らしいぞ。
 
== 主な対応ハードウェア ==
 
=== NVIDIA ===
 
* 第4世代Tensorコア
** NVIDIA H100, H200
** NVIDIA L4
** RTX 6000, 4500, 4000
** GeForce RTX 40シリーズ
 
=== Intel ===
 
* Intel Gaudi 3
* Intel Xeon の Intel AMX
 
=== ARM ===
 
* Armv9.2-A のSME (Scalable Matrix Extension)
 
=== AMD ===
 
* RDNA 4
** Radeon RX 9000シリーズ


== 外部リンク ==
== 外部リンク ==

2026年5月15日 (金) 08:16時点における最新版

FP8(えふぴーえいと)とは、ARMIntelNVIDIAの3社が共同で仕様を策定した「8ビットの浮動小数点数」です。ホワイトペーパーでは「reduced precision floating-point」となっているので日本語訳は「低精度浮動小数点数」でいいと思う。

主にNVIDIAのHopperアーキテクチャ以降(H100など)でサポートされ、従来のFP16/BF16と比較して約2倍の処理速度を実現し、大規模言語モデル(LLM)や生成AIの学習・推論を高速化します。

形式[編集 | ソースを編集]

FP8には指数Eと仮数Mのビット数が異なる2種類の形式がある。

E5M2[編集 | ソースを編集]

  • 符号ビット: 1ビット
  • 指数部の幅: 5ビット
  • 仮数部の幅: 2ビット

E5M2は「指数5ビット」「仮数2ビット」の形式である。IEEE 754の16ビット形式である「FP16」の仮数部を10ビットから2ビットにしたものとなっている。「FP32bfloat16」の関係と同じく「FP16とFP8は互換性がある」ということらしい。FP16で書かれたソースコードを単純に文字列置換するだけで使えるのが利点らしい。E5M2は「勾配テンソル」に最適らしいぞ。

E4M3[編集 | ソースを編集]

  • 符号ビット: 1ビット
  • 指数部の幅: 4ビット
  • 仮数部の幅: 3ビット

E4M3はE5M2よりダイナミックレンジが広い。E4M3は「重みテンソル」および「活性化テンソル」に最適らしいぞ。

主な対応ハードウェア[編集 | ソースを編集]

NVIDIA[編集 | ソースを編集]

  • 第4世代Tensorコア
    • NVIDIA H100, H200
    • NVIDIA L4
    • RTX 6000, 4500, 4000
    • GeForce RTX 40シリーズ

Intel[編集 | ソースを編集]

  • Intel Gaudi 3
  • Intel Xeon の Intel AMX

ARM[編集 | ソースを編集]

  • Armv9.2-A のSME (Scalable Matrix Extension)

AMD[編集 | ソースを編集]

  • RDNA 4
    • Radeon RX 9000シリーズ

外部リンク[編集 | ソースを編集]

関連項目[編集 | ソースを編集]