Premiers pasClassementDecode calculatorModèlesOrganizationsReportsMatrix runsMatérielÉvaluations comparativesMarketplaceLocationsProDocs API
Langue
Actual Computer — Every computer, one endpoint

Speed test matrix

Gemma-4-26B-A4B-NVFP4 on RTX PRO 6000 Blackwell Server Edition 96GB

vllm · 0.30.1rc1.dev452+g73a583112 · NVFP46 contexts (8K–251K) × 8 concurrency levels (1–128) · prefill at 8K, 16K, 32K, 64K, 128K, 251K, 256K
by @keennaylmx dev importMeasured

Hardware

Type
Discrete GPU
GPU
RTX PRO 6000 Blackwell Server Edition
VRAM
96 GB
OS
linux

Engine

Engine
vllm
Version
0.30.1rc1.dev452+g73a583112
Quantization
NVFP4
Backend
cuda
Build
cuda-13.2
Commit
73a5831127a9

Run

Served model
gemma
Revision
main
Decode test
Fixed duration
Prefill mode
Measured during decode warm-up
Time per measurement
30 s
Max output
4,096 tokens

Launch command

env VLLM_USE_V2_MODEL_RUNNER=1 "$HOME/env_rtxpro6k-nvidia-vllm-73a5831127a9/bin/vllm" serve nvidia/Gemma-4-26B-A4B-NVFP4 --served-model-name gemma --trust-remote-code --tensor-parallel-size 1 --reasoning-parser gemma4 --enable-auto-tool-choice --tool-call-parser gemma4 --max-model-len 262144 --gpu-memory-utilization 0.82 --host 0.0.0.0 --port 8000 --api-key <redacted> --kv-cache-dtype fp8 --attention-backend TRITON_ATTN --moe-backend flashinfer_cutlass

Prefill

prompt tok/s by context length
8K context34.8K236 ms TTFT
16K context33.2K490 ms TTFT
32K context26.4K1,228 ms TTFT
64K context18.6K3,463 ms TTFT
128K context11.6K11,087 ms TTFT
251K context6,74337,488 ms TTFT
256K context6,62838,902 ms TTFT

Sustained decode

total tok/s · rows are context length, columns are simultaneous requests
Context1248163264128
8KLoopedLoopedLoopedLoopedLoopedLoopedLoopedLooped
16K133.459 ms TTFTLoopedLoopedLoopedLoopedLoopedLoopedLooped
32KLoopedLoopedLoopedLoopedLoopedLoopedLoopedOver capacity
64K117.2197 ms TTFT206.9260 ms TTFTLoopedLoopedLoopedLoopedOver capacityOver capacity
128KLoopedLoopedLoopedLoopedLoopedOver capacityOver capacityOver capacity
251KLoopedLoopedLoopedLoopedOver capacityOver capacityOver capacityOver capacity

Looped: the model kept repeating the same text, so the benchmark discarded this measurement. Over capacity: not run because this many requests at this context would exceed the server's KV cache.

TTFT is measured after the benchmark warms the server's prompt cache, so it mostly excludes prefill.

All measurements

Latencies are medians. Total tok/s is output across all simultaneous requests.
PhaseContextRequests at onceStatusTotal tok/sPer request tok/sTTFTTime between tokensAverage active requestsCompleted requestsOutput tokensMeasured for
Prefill8K1Valid34.8K—236 ms——1——
Prefill16K1Valid33.2K—490 ms——1——
Prefill32K1Valid26.4K—1,228 ms——1——
Prefill64K1Valid18.6K—3,463 ms——1——
Prefill128K1Valid11.6K—11,087 ms——1——
Prefill251K1Valid6,743.0—37,488 ms——1——
Prefill256K1Valid6,628.0—38,902 ms——1——
Sustained decode8K1Looped—————00—
Sustained decode8K2Looped—————00—
Sustained decode8K4Looped—————00—
Sustained decode8K8Looped—————00—
Sustained decode8K16Looped—————00—
Sustained decode8K32Looped—————00—
Sustained decode8K64Looped—————00—
Sustained decode8K128Looped—————00—
Sustained decode16K1Valid133.4135.859 ms7.4 ms1.014,00230.0 s
Sustained decode16K2Looped—————00—
Sustained decode16K4Looped—————00—
Sustained decode16K8Looped—————00—
Sustained decode16K16Looped—————00—
Sustained decode16K32Looped—————00—
Sustained decode16K64Looped—————00—
Sustained decode16K128Looped—————00—
Sustained decode32K1Looped—————00—
Sustained decode32K2Looped—————00—
Sustained decode32K4Looped—————00—
Sustained decode32K8Looped—————00—
Sustained decode32K16Looped—————00—
Sustained decode32K32Looped—————00—
Sustained decode32K64Looped—————00—
Sustained decode32K128Over capacity————————
Sustained decode64K1Valid117.2117.3197 ms8.5 ms1.003,51530.0 s
Sustained decode64K2Valid206.9103.6260 ms9.6 ms2.006,22430.1 s
Sustained decode64K4Looped—————00—
Sustained decode64K8Looped—————00—
Sustained decode64K16Looped—————00—
Sustained decode64K32Looped—————00—
Sustained decode64K64Over capacity————————
Sustained decode64K128Over capacity————————
Sustained decode128K1Looped—————00—
Sustained decode128K2Looped—————00—
Sustained decode128K4Looped—————00—
Sustained decode128K8Looped—————00—
Sustained decode128K16Looped—————00—
Sustained decode128K32Over capacity————————
Sustained decode128K64Over capacity————————
Sustained decode128K128Over capacity————————
Sustained decode251K1Looped—————00—
Sustained decode251K2Looped—————00—
Sustained decode251K4Looped—————00—
Sustained decode251K8Looped—————00—
Sustained decode251K16Over capacity————————
Sustained decode251K32Over capacity————————
Sustained decode251K64Over capacity————————
Sustained decode251K128Over capacity————————

Looped: the model kept repeating the same text, so the benchmark discarded this measurement. Over capacity: not run because this many requests at this context would exceed the server's KV cache.