Prefix caching on one H100: Qwen3-30B-A3B-Instruct-2507 FP8, vLLM 0.31.0
Quick-mode measurement on TokenWatt's production API node, one H100 SXM on RunPod Secure Cloud (October 29, 2026): Qwen3-30B-A3B-Instruct-2507 FP8 on vLLM 0.31.0 with default automatic prefix caching, chat-like workload (median 1,024 input / 256 output tokens). The same SLO search ran four times with 0%, 50%, 75% and 90% of every prompt drawn from eight shared prefixes; cache hit rates are vLLM's own prefix-cache counters (0%, 48.7%, 74.0%, 89.2%). Capacity within p99 TTFT ≤ 2 s and p99 TPOT ≤ 50 ms rose from 11.5 to 21.0 requests per second. Accuracy was checked on the same node in separate runs (GSM8K 96% quick, 94.5% full); these runs skipped the accuracy gate.
Results
Each value is the median of 2 runs.
SLO goodput
Tokens per joule
Decode bandwidth utilization
Axis runs to 100% of rated bandwidth.
GPU board power
GPU board power only — excludes CPUs, memory, NICs, fans and PSU losses.
All numbers
Cards for equal goodput = 64 × reference goodput ÷ configuration goodput, rounded up.
| Metric | No prompt reuse (0% cache hits) | 50% shared prefix (48.7% cache hits) | 75% shared prefix (74.0% cache hits) | 90% shared prefix (89.2% cache hits) |
|---|---|---|---|---|
| Engine build | vllm 0.31.0 · KV BF16 | vllm 0.31.0 · KV BF16 | vllm 0.31.0 · KV BF16 | vllm 0.31.0 · KV BF16 |
| Decode bandwidth utilization (MBU) | 61% | 67% | 76% | 81% |
| GPU board power | 0.61 kW | 0.65 kW | 0.66 kW | 0.62 kW |
| SLO goodput | 4,740 tok/s | 6,678 tok/s | 8,041 tok/s | 8,508 tok/s |
| Tokens per joule | 7.81 | 10.32 | 12.28 | 13.66 |
| TTFT p99 | 380 ms | 294 ms | 248 ms | 257 ms |
| TPOT p99 | 40.6 ms | 46.1 ms | 42.1 ms | 39.4 ms |
| SLO met | yes | yes | yes | yes |
| Accuracy (none) | — | — | — | — |
| Accuracy Δ vs. reference | — | — | — | — |
| Cards for equal goodput | 64 | 46 | 38 | 36 |
Setup
Any change to these fields makes it a different report.
- Accelerator
- 1× NVIDIA H100 80GB HBM3
- Rated HBM BW
- 3.35 TB/s per GPU
- Driver / runtime
- 595.91.07
- Host
- RunPod Secure H100 SXM (TokenWatt API production node)
- Engine
- vllm 0.31.0
- Kernel libraries
- vllm/vllm-openai:v0.31.0 --max-model-len 32768 --enable-auto-tool-choice --tool-call-parser hermes
- Model
- Qwen3-30B-A3B-Instruct-2507-FP8 (MoE)
- Quantization
- FP8 weights, BF16 KV cache
- Parallelism
- 1 replica × TP1
- Workload trace
- chat-mix-v1
- Input tokens
- median 1,024 · p90 4,096
- Output tokens
- median 256 · p90 1,024
- Arrival
- Poisson, rate swept to SLO boundary
- Power source
- GPU board power sum (NVIDIA) · 1 Hz · 120 s steady state
- Runs per config
- 2 (variance band ±1.5%)
- Accuracy gate
- none · max drop 1.0 pts
Not covered
Do not extrapolate this report to the following.
- Whole-node power (no BMC access on this host)
- Context lengths beyond the chat-mix-v1 trace
- Quick mode: short windows, few repeats
- Accuracy: no accuracy gate was run
Reproduce
Run on the same hardware and software versions. Results should fall within ±1.5%.
tokenwatt run --spec live-qwen3-30b-a3b-prefix-cache.spec.yaml --label 'prefix-0' --role other --out runs/prefix-0.json tokenwatt run --spec live-qwen3-30b-a3b-prefix-cache.spec.yaml --label 'prefix-0.5' --role other --out runs/prefix-0-5.json tokenwatt run --spec live-qwen3-30b-a3b-prefix-cache.spec.yaml --label 'prefix-0.75' --role other --out runs/prefix-0-75.json tokenwatt run --spec live-qwen3-30b-a3b-prefix-cache.spec.yaml --label 'prefix-0.9' --role other --out runs/prefix-0-9.json tokenwatt report runs/prefix-0.json runs/prefix-0-5.json runs/prefix-0-75.json runs/prefix-0-9.json --title 'Prefix caching on one H100: Qwen3-30B-A3B-Instruct-2507 FP8, vLLM 0.31.0'