शुरुआत करेंलीडरबोर्डDecode calculatorमॉडलOrganizationsReportsMatrix runsहार्डवेयरबेंचमार्कमार्केटप्लेसरेंटलProAPI दस्तावेज़
भाषा
Actual Computer — Every computer, one endpoint

Speed test matrix

gemma-4-31B-it-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 MAX_JOBS=2 FLASHINFER_NVCC_THREADS=1 TORCHINDUCTOR_COMPILE_THREADS=1 "$HOME/env_rtxpro6k-redhatai-vllm-73a5831127a9d2b8/bin/vllm" serve RedHatAI/gemma-4-31B-it-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.83 --host 0.0.0.0 --port 8000 --api-key <redacted> --limit-mm-per-prompt '{"image":4}' --async-scheduling

Prefill

prompt tok/s by context length
8K context8,1221,010 ms TTFT
16K context6,4932,504 ms TTFT
32K context4,4487,277 ms TTFT
64K context2,73823,582 ms TTFT
128K context1,57781,815 ms TTFT
251K context869.0291,002 ms TTFT
256K context853.0302,427 ms TTFT

Sustained decode

total tok/s · rows are context length, columns are simultaneous requests
Context1248163264128
8K53.353 ms TTFTLoopedLoopedLoopedLooped858.3322 ms TTFTOver capacityOver capacity
16K50.176 ms TTFT100.2107 ms TTFTLoopedLooped442.0324 ms TTFTOver capacityOver capacityOver capacity
32K46.3121 ms TTFTLoopedLoopedLoopedOver capacityOver capacityOver capacityOver capacity
64K41.9217 ms TTFTLoopedLoopedOver capacityOver capacityOver capacityOver capacityOver capacity
128K35.2490 ms TTFT70.1642 ms TTFTOver capacityOver capacityOver capacityOver capacityOver capacityOver capacity
251K26.5Requests queued1,133 ms TTFTOver capacityOver capacityOver capacityOver capacityOver capacityOver capacityOver capacity

Requests queued: the server could not run all requests at once, so some waited in a queue. 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
Prefill8K1Valid8,122.0—1,010 ms——1——
Prefill16K1Valid6,493.0—2,504 ms——1——
Prefill32K1Valid4,448.0—7,277 ms——1——
Prefill64K1Valid2,738.0—23,582 ms——1——
Prefill128K1Valid1,577.0—81,815 ms——1——
Prefill251K1Valid869.0—291,002 ms——1——
Prefill256K1Valid853.0—302,427 ms——1——
Sustained decode8K1Valid53.353.453 ms18.7 ms1.001,59930.0 s
Sustained decode8K2Looped—————00—
Sustained decode8K4Looped—————00—
Sustained decode8K8Looped—————00—
Sustained decode8K16Looped—————00—
Sustained decode8K32Valid858.327.3322 ms36.6 ms32.0025,82730.1 s
Sustained decode8K64Over capacity————————
Sustained decode8K128Over capacity————————
Sustained decode16K1Valid50.150.176 ms19.9 ms1.001,50330.0 s
Sustained decode16K2Valid100.250.1107 ms19.9 ms2.003,00530.0 s
Sustained decode16K4Looped—————00—
Sustained decode16K8Looped—————00—
Sustained decode16K16Valid442.027.8324 ms35.9 ms16.0013,25930.0 s
Sustained decode16K32Over capacity————————
Sustained decode16K64Over capacity————————
Sustained decode16K128Over capacity————————
Sustained decode32K1Valid46.346.4121 ms21.6 ms1.001,38930.0 s
Sustained decode32K2Looped—————00—
Sustained decode32K4Looped—————00—
Sustained decode32K8Looped—————00—
Sustained decode32K16Over capacity————————
Sustained decode32K32Over capacity————————
Sustained decode32K64Over capacity————————
Sustained decode32K128Over capacity————————
Sustained decode64K1Valid41.942.0217 ms23.8 ms1.001,25730.0 s
Sustained decode64K2Looped—————00—
Sustained decode64K4Looped—————00—
Sustained decode64K8Over capacity————————
Sustained decode64K16Over capacity————————
Sustained decode64K32Over capacity————————
Sustained decode64K64Over capacity————————
Sustained decode64K128Over capacity————————
Sustained decode128K1Valid35.235.3490 ms28.3 ms1.001,05630.0 s
Sustained decode128K2Valid70.135.1642 ms28.5 ms2.002,10430.0 s
Sustained decode128K4Over capacity————————
Sustained decode128K8Over capacity————————
Sustained decode128K16Over capacity————————
Sustained decode128K32Over capacity————————
Sustained decode128K64Over capacity————————
Sustained decode128K128Over capacity————————
Sustained decode251K1Requests queued26.527.11,133 ms36.9 ms1.0079630.0 s
Sustained decode251K2Over capacity————————
Sustained decode251K4Over capacity————————
Sustained decode251K8Over capacity————————
Sustained decode251K16Over capacity————————
Sustained decode251K32Over capacity————————
Sustained decode251K64Over capacity————————
Sustained decode251K128Over capacity————————

Requests queued: the server could not run all requests at once, so some waited in a queue. 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.