Skip to content
KernelIndex
Search⌘K

GEMM FP8 fp4 n2048 k2048

3 eligible runs
gemm

Mixed FP8 x FP4 dense GEMM C = A @ B.T (N=2048, K=2048), DeepGEMM SM100 recipe. A is FP8 (float8_e4m3fn) with per-token x 128-block float32 scale; B is FP4 (packed E2M1, int8 storage, 2 values/byte) with UE8M0 per-32 block scale (float32). The reference dequantizes both operands and matmuls, so the FP8xFP4 kernel is numerically exact against it.

Source baseline · unbeaten
13.5µsmean
deepgemm_fp8_fp4_gemm_nt_n2048_k2048FlashInfer-Bench baselines · Apache-2.0 · python

Reported evidence · last observed 2026-06-06. The source's designated baseline implementation. Reported by source; not independently reproduced.

Current records

Source-native comparison · GPU NVIDIA B200 · Workload m = 128 · fp32/fp8_e4m3 · CUDA 13.0 · Framework pytorch 2.11.0+cu130 · Protocol flashinfer-bench · mean · 1 results · last observed 2026-06-06Record history →
Estimated floor 361 ns · record 37.39× above itestimate, not evidence ›
DRAM 361 ns · compute 119 ns · bandwidth-bound on B200
every declared tensor crosses HBM exactly once (8,000 GB/s, B200 datasheet)
2·M·N·K with M=128, N=1024, K=2048 at the dense fp8 peak (4,500 TFLOP/s)
headroom-v1: a lower bound from declared tensors and datasheet peaks. A kernel can sit well above it for good reasons.
#
Implementation
Latency
vs #1
Trust
Observed
1
deepgemm_fp8_fp4_gemm_nt_n2048_k2048baselineFlashInfer-Bench baselines
13.5µs
1.00×
Reported · Apache-2.0 · source
2026-06-06

Measured exactly what you asked. The source's designated baseline implementation. Reported by source; not independently reproduced.

source mirroredApache-2.0no install recipeView source →Run detail →

Scaling by m

5.00 µs10.0 µs15.0 µs1282561024m →13.5 µs13.8 µs15.3 µsdeepgemm_fp8_fp4_gemm_nt_n2048_k2048
deepgemm_fp8_fp4_gemm_nt_n2048_k2048best per workload · NVIDIA B200 · CUDA 13.0 · pytorch 2.11.0+cu130 · flashinfer-bench held constant

Implementations

Implementation
Runtime
Best latency
Evidence
Availability
deepgemm_fp8_fp4_gemm_nt_n2048_k2048FlashInfer-Bench baselines
python
13.5µs
1.00×
Reported
Apache-2.0 · source

Semantics

Inputs and outputs
a_fp8fp8_e4m3 [m, k]
a_scalefp32 [m, k_a_blocks]
b_fp4int8 [n, k_half]
b_scalefp32 [n, k_b_blocks]
cbf16 [m, n]
Axes and behavior
kconstant = 2048
mvariable
nconstant = 2048
k_halfconstant = 1024
k_a_blocksconstant = 16
k_b_blocksconstant = 64
determinismunspecified
constraintsNo mutation or aliasing
Identity
aliasgemm_fp8_fp4_n2048_k2048sha256dd3bf0ef451e…
Sources: FlashInfer-Bench (2026-06-06) · Apache-2.0last observed 2026-06-06How records are decidedJSON