MXFP4
MXFP4(Micro-eXponent 4-bit)とは、Open Compute Project(OCP)がAIの推論および学習の高速化・高効率化を目的に策定を進めている、4ビットのブロック浮動小数点数(Block Floating Point)形式です。
データ構造[編集 | ソースを編集]
MXFP4では、32個の数値データを1つの束(ブロック)として管理します。1ブロックあたりの構成は以下の通りです。
| ビット数 | 要素数 | 合計ビット数 | |
|---|---|---|---|
| エレメント | 4ビット | 32要素 | 128ビット |
| 共有スケール | 8ビット | 1要素 | 8ビット |
| 合計 | 136ビット |
- エレメント
- 符号部(S) 1ビット: 数値の正(0)か負(1)を表します。
- 指数部(E) 2ビット: 数値の「桁数の大きさ(2の何乗か)」を表します。
- 仮数部(M) 1ビット: 数値の「有効数字」を表します。
- 共有スケール
- 指数部 8ビット:
- 実際の数値(復元公式)
実際の数値 = (-1)^符号部 * 仮数部 * 2^エレメント指数 * 2^共有スケール
- 特徴
エレメントと共有スケールでSIMD演算が効く。