GQA paged prefill causal h40 kv10 d128 ps1
20 eligible runs
gqa-paged-attention
Batched Grouped Query Attention prefill with a paged KV cache. Causal mask is applied. Captured from Phi-4 14B at TP=1 during incremental prefill. 40 q-heads, 10 kv-heads per device, head_dim=128, page_size=1.
Source baseline · unbeaten
16.7µsmean
flashinfer / wrapper5222a7FlashInfer-Bench baselines · Apache-2.0 · python
Reproduction-ready evidence · last observed 2026-04-07. The source's designated baseline implementation. Reported by source; not independently reproduced.
Current records
Workloadtotal_q = 1 · num_pages = 2 · len_indptr = 2 · num_kv_indices = 1 · bf1620 cases
num_pages
num_kv_indices
total_q
len_indptr
dtype
scrolls · 20 cases total
Not measured on H100 for this workload. Challenges →
Source-native comparison · GPU NVIDIA B200 · Workload total_q = 1 · num_pages = 2 · len_indptr = 2 · num_kv_indices = 1 · bf16 · CUDA 12.8 · Framework pytorch 2.9.1+cu128 · Protocol flashinfer-bench · mean · 1 results · last observed 2026-04-07Record history →
Estimated floor 3 ns · record 6510.44× above itestimate, not evidence ›
DRAM 3 ns · bandwidth-bound on B200
every declared tensor crosses HBM exactly once (8,000 GB/s, B200 datasheet)
no arithmetic formula for this family: bandwidth floor only
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
116.7µs1.00×Reproduction-ready · Apache-2.0 · source2026-04-07
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 →
Implementations
Implementation
Runtime
Best latency
Evidence
Availability
flashinfer / wrapper5222a7FlashInfer-Bench baselines
python
16.7µs
1.00×
Reproduction-ready
Apache-2.0 · source
Semantics
Inputs and outputs
qbf16 [total_q, num_qo_heads, head_dim]
k_cachebf16 [num_pages, page_size, num_kv_heads, head_dim]
v_cachebf16 [num_pages, page_size, num_kv_heads, head_dim]
qo_indptrint32 [len_indptr]
kv_indptrint32 [len_indptr]
kv_indicesint32 [num_kv_indices]
sm_scalefp32 scalar
outputbf16 [total_q, num_qo_heads, head_dim]
lsefp32 [total_q, num_qo_heads]
Axes and behavior
total_qvariable
head_dimconstant = 128
num_pagesvariable
page_sizeconstant = 1
len_indptrvariable
num_kv_headsconstant = 10
num_qo_headsconstant = 40
num_kv_indicesvariable
determinismunspecified
constraintsNo mutation or aliasing
Identity
Sources: FlashInfer-Bench (2026-04-07) · Apache-2.0last observed 2026-04-07How records are decidedJSON