BaşlarkenLiderlik tablosuDecode calculatorModellerOrganizationsReportsMatrix runsDonanımKarşılaştırmalı DeğerlendirmelerPazar yeriKiralıklarProAPI Dokümanlar
Dil
Actual Computer — Every computer, one endpoint

Speed test matrix

gemma-4-12B-it on RTX PRO 6000 Blackwell Server Edition 96GB

vllm · 0.30.1rc1.dev452+g73a583112 · BF166 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
BF16
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

"$HOME/env_rtxpro6k-google-vllm-73a5831127a9/bin/vllm" serve google/gemma-4-12B-it --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> --attention-backend TRITON_ATTN

Prefill

prompt tok/s by context length
8K context11K745 ms TTFT
16K context9,8261,655 ms TTFT
32K context7,7674,168 ms TTFT
64K context5,41211,929 ms TTFT
128K context3,36938,290 ms TTFT
251K context1,937130,497 ms TTFT
256K context1,904135,428 ms TTFT

Sustained decode

total tok/s · rows are context length, columns are simultaneous requests
Context1248163264128
8K51.051 ms TTFTLoopedLoopedLoopedLoopedLoopedLoopedOver capacity
16KLooped96.8111 ms TTFTLoopedLoopedLoopedLoopedLoopedOver capacity
32K45.8118 ms TTFT91.3171 ms TTFTLoopedLoopedLooped719.3935 ms TTFTOver capacityOver capacity
64K42.4215 ms TTFTLooped169.0419 ms TTFTLoopedLoopedOver capacityOver capacityOver capacity
128KLooped73.9661 ms TTFT147.3978 ms TTFT275.31,653 ms TTFTOver capacityOver capacityOver capacityOver capacity
251K29.71,081 ms TTFT59.41,505 ms TTFT118.62,276 ms TTFTOver capacityOver 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
Prefill8K1Valid11K—745 ms——1——
Prefill16K1Valid9,826.0—1,655 ms——1——
Prefill32K1Valid7,767.0—4,168 ms——1——
Prefill64K1Valid5,412.0—11,929 ms——1——
Prefill128K1Valid3,369.0—38,290 ms——1——
Prefill251K1Valid1,937.0—130,497 ms——1——
Prefill256K1Valid1,904.0—135,428 ms——1——
Sustained decode8K1Valid51.051.051 ms19.6 ms1.001,52930.0 s
Sustained decode8K2Looped—————00—
Sustained decode8K4Looped—————00—
Sustained decode8K8Looped—————00—
Sustained decode8K16Looped—————00—
Sustained decode8K32Looped—————00—
Sustained decode8K64Looped—————00—
Sustained decode8K128Over capacity————————
Sustained decode16K1Looped—————00—
Sustained decode16K2Valid96.848.5111 ms20.6 ms2.002,90230.0 s
Sustained decode16K4Looped—————00—
Sustained decode16K8Looped—————00—
Sustained decode16K16Looped—————00—
Sustained decode16K32Looped—————00—
Sustained decode16K64Looped—————00—
Sustained decode16K128Over capacity————————
Sustained decode32K1Valid45.845.8118 ms21.8 ms1.001,37330.0 s
Sustained decode32K2Valid91.345.7171 ms21.9 ms2.002,73830.0 s
Sustained decode32K4Looped—————00—
Sustained decode32K8Looped—————00—
Sustained decode32K16Looped—————00—
Sustained decode32K32Valid719.322.6935 ms44.3 ms32.0021,58830.0 s
Sustained decode32K64Over capacity————————
Sustained decode32K128Over capacity————————
Sustained decode64K1Valid42.442.4215 ms23.6 ms1.001,27230.0 s
Sustained decode64K2Looped—————00—
Sustained decode64K4Valid169.042.2419 ms23.7 ms4.005,07130.0 s
Sustained decode64K8Looped—————00—
Sustained decode64K16Looped—————00—
Sustained decode64K32Over capacity————————
Sustained decode64K64Over capacity————————
Sustained decode64K128Over capacity————————
Sustained decode128K1Looped—————00—
Sustained decode128K2Valid73.937.0661 ms27.0 ms2.002,21630.0 s
Sustained decode128K4Valid147.336.8978 ms27.2 ms4.004,41830.0 s
Sustained decode128K8Valid275.334.31,653 ms29.2 ms8.008,25930.0 s
Sustained decode128K16Over capacity————————
Sustained decode128K32Over capacity————————
Sustained decode128K64Over capacity————————
Sustained decode128K128Over capacity————————
Sustained decode251K1Valid29.729.81,081 ms33.6 ms1.0089030.0 s
Sustained decode251K2Valid59.429.81,505 ms33.6 ms2.001,78230.0 s
Sustained decode251K4Valid118.629.62,276 ms33.8 ms4.003,55630.0 s
Sustained decode251K8Over capacity————————
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.