Skip to content

Quant: OCP FP8 E4M3 support - #27512

Draft
ORippler wants to merge 1 commit into
masterfrom
osimons/ocp_fp8
Draft

Quant: OCP FP8 E4M3 support#27512
ORippler wants to merge 1 commit into
masterfrom
osimons/ocp_fp8

Conversation

@ORippler

@ORippler ORippler commented Aug 21, 2026

Copy link
Copy Markdown
Collaborator

Overview

Add OCP FP8 (E4M3) to ggml. This is currently WIP and not ready for review, please excuse any slop that may still be contained herein.

Additional information

  • E4M3 is the format most commonly used for Inference. E5M2 is for training, so given the inference focus of ggml we may ditch the E4M3 suffix and add it as plain FP8.
  • OCP FP8 should 1:1 correspond to Nvidia's FP8 format. For AMD, it should be E4M3FNUZ (I expect AMD to move towards OCP's standard in future HW generations, and we already see this happening).
  • OCP FP8 is commonly combined with per-tensor scales, same as NVFP4. It will thus face the same constraints & difficulties as NVFP4 (calibrated input_scales for activation-quant for both GEMM and KV caches, weight_scales)
  • Will have to add FP8 KV cache support to this stacked PR, as this is something NVIDIA is interested in.
  • Same data-type & conversion will be reuseable for MXFP8 (another OCP standard)

Requirements

@github-actions github-actions Bot added testing Everything test related ggml changes relating to the ggml tensor library for machine learning conversion labels Aug 21, 2026
@0cc4m

0cc4m commented Aug 22, 2026

Copy link
Copy Markdown
Contributor

AMD FNUZ is only CDNA3, see https://rocm.docs.amd.com/projects/HIP/en/latest/reference/low_fp_types.html#id4

RDNA4 and CDNA4 use FP8 OCP.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

conversion ggml changes relating to the ggml tensor library for machine learning testing Everything test related

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants