Skip to content
KernelIndex
Search⌘K

GQA paged prefill causal h32 kv8 d64 ps1

8 eligible runs
gqa-paged-attention

Batched Grouped Query Attention prefill with a paged KV cache. Causal mask is applied. Captured from Llama-3.2-1B during incremental prefill.

Source baseline · unbeaten
12.3µsmean
flashinfer / wrapperece89aFlashInfer-Bench baselines · Apache-2.0 · python

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

Current records

Source-native comparison · GPU NVIDIA B200 · Workload total_q = 4 · num_pages = 1 · len_indptr = 2 · num_kv_indices = 4 · bf16 · CUDA 13.0 · Framework pytorch 2.11.0+cu130 · Protocol flashinfer-bench · mean · 2 results · last observed 2026-04-20Record history →
Estimated floor 2 ns · record 5347.05× above itestimate, not evidence ›
DRAM 2 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
1
flashinfer / wrapperece89abaselineFlashInfer-Bench baselines
12.3µs
1.00×
Reported · Apache-2.0 · source
2026-04-20

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 →
2
flashinfer / wrapperece89abaselineFlashInfer-Bench baselines
12.5µs
1.01×
Reported · Apache-2.0 · source
2026-04-20

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 / wrapperece89aFlashInfer-Bench baselines
python
12.3µs
1.00×
Reported
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 = 64
num_pagesvariable
page_sizeconstant = 1
len_indptrvariable
num_kv_headsconstant = 8
num_qo_headsconstant = 32
num_kv_indicesvariable
determinismunspecified
constraintsNo mutation or aliasing
Identity
aliasgqa_paged_prefill_causal_h32_kv8_d64_ps1modelllama-3-2-1bsha2568dd9aef4fcd6…
Sources: FlashInfer-Bench (2026-04-20) · Apache-2.0last observed 2026-04-20How records are decidedJSON