Pierwsze krokiRankingDecode calculatorModeleOrganizationsReportsMatrix runsSprzętBenchmarkiMarketplaceWynajemProDokumentacja API
Język
Actual Computer — Every computer, one endpoint

Speed test matrix

NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4 on RTX 3090 24GB

vllm · 0.32.0 · NVFP48 contexts (0–1016K) × 8 concurrency levels (1–128) · prefill at 8K, 16K, 32K, 64K, 128K
by @Sandbergllm-inference-bench v0.8.0Measured

Hardware

Type
Discrete GPU
GPU
RTX 3090
VRAM
24 GB
CPU
AMD Ryzen 9 7900X (12C)
RAM
32 GB
OS
Ubuntu 24.04.5

Engine

Engine
vllm
Version
0.32.0
Quantization
NVFP4
Backend
cuda
Build
vllm/vllm-openai:v0.32.0-x86_64

Run

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

Launch command

# Untuned out-of-the-box baseline. Spec decode: none. KV cache: int4_per_token_head
# 1x RTX 3090 24GB (Zagitta/gpu-unlock), 350 W limit (VBIOS max), PCIe Gen4 x16 | AMD Ryzen 9 7900X 12C | 32 GB DDR5 | Ubuntu 24.04.5, NVIDIA driver 595.99.02
vllm serve nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4 --max-model-len 1048576 --gpu-memory-utilization 0.94 --max-num-seqs 128 --enable-prefix-caching --trust-remote-code --kv-cache-dtype int4_per_token_head --attention-backend TRITON_ATTN

Prefill

prompt tok/s by context length
8K context7,5241,116 ms TTFT
16K context6,4962,559 ms TTFT
32K context4,9486,685 ms TTFT
64K context3,36319,622 ms TTFT
128K context2,05864,042 ms TTFT

Sustained decode

total tok/s · rows are context length, columns are simultaneous requests
Context1248163264128
0201.037 ms TTFT324.3201 ms TTFT502.271 ms TTFT752.3107 ms TTFT1,070.6153 ms TTFT1,529.8286 ms TTFT1,724.8Requests queued424 ms TTFT1,736.7Requests queued393 ms TTFT
16K175.9210 ms TTFT284.4305 ms TTFT447.1503 ms TTFTLoopedLoopedLoopedLoopedOver capacity
32K156.5514 ms TTFT256.7773 ms TTFT406.51,242 ms TTFT612.02,224 ms TTFT836.84,206 ms TTFT1,098.78,274 ms TTFTOver capacityOver capacity
64K128.31,546 ms TTFT214.52,293 ms TTFT340.03,722 ms TTFT519.26,693 ms TTFT676.412,667 ms TTFTOver capacityOver capacityOver capacity
128K93.75,259 ms TTFT158.77,763 ms TTFT252.212,894 ms TTFT387.323,191 ms TTFTOver capacityOver capacityOver capacityOver capacity
256K47.5Requests queued7,074 ms TTFT59.2Requests queued11,868 ms TTFT170.019,842 ms TTFTOver capacityOver capacityOver capacityOver capacityOver capacity
512KOver capacityOver capacityOver capacityOver capacityOver capacityOver capacityOver capacityOver capacity
1016KOver capacityOver 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
Prefill8K1Valid7,524.0—1,116 ms——1——
Prefill16K1Valid6,496.0—2,559 ms——1——
Prefill32K1Valid4,948.0—6,685 ms——1——
Prefill64K1Valid3,363.0—19,622 ms——1——
Prefill128K1Valid2,058.0—64,042 ms——1——
Sustained decode01Valid201.0202.137 ms4.9 ms1.006,03030.0 s
Sustained decode02Valid324.3163.0201 ms6.1 ms2.009,72830.0 s
Sustained decode04Valid502.2126.571 ms7.9 ms4.0015,06430.0 s
Sustained decode08Valid752.395.1107 ms10.5 ms8.0022,56830.0 s
Sustained decode016Valid1,070.668.3153 ms14.6 ms16.0032,11930.0 s
Sustained decode032Valid1,529.849.1286 ms20.4 ms32.0045,88830.0 s
Sustained decode064Requests queued1,724.835.9424 ms27.9 ms50.0051,70030.0 s
Sustained decode0128Requests queued1,736.736.1393 ms27.7 ms50.0052,10030.0 s
Sustained decode16K1Valid175.9176.4210 ms5.7 ms1.005,27730.0 s
Sustained decode16K2Valid284.4142.2305 ms7.0 ms2.008,53230.0 s
Sustained decode16K4Valid447.1111.3503 ms9.0 ms4.0013,41230.0 s
Sustained decode16K8Looped—————00—
Sustained decode16K16Looped—————00—
Sustained decode16K32Looped—————00—
Sustained decode16K64Looped—————00—
Sustained decode16K128Over capacity————————
Sustained decode32K1Valid156.5157.0514 ms6.4 ms1.004,69630.0 s
Sustained decode32K2Valid256.7127.8773 ms7.8 ms2.007,70230.0 s
Sustained decode32K4Valid406.5100.01,242 ms10.0 ms4.0012,19730.0 s
Sustained decode32K8Valid612.073.22,224 ms13.7 ms8.0018,35230.0 s
Sustained decode32K16Valid836.847.64,206 ms21.0 ms16.0025,10430.0 s
Sustained decode32K32Valid1,098.728.58,274 ms35.1 ms32.0032,96030.0 s
Sustained decode32K64Over capacity————————
Sustained decode32K128Over capacity————————
Sustained decode64K1Valid128.3128.51,546 ms7.8 ms1.003,84830.0 s
Sustained decode64K2Valid214.5105.12,293 ms9.5 ms2.006,43630.0 s
Sustained decode64K4Valid340.080.13,722 ms12.5 ms4.0010,19630.0 s
Sustained decode64K8Valid519.256.66,693 ms17.7 ms8.0015,57630.0 s
Sustained decode64K16Valid676.432.212,667 ms31.1 ms16.0020,28830.0 s
Sustained decode64K32Over capacity————————
Sustained decode64K64Over capacity————————
Sustained decode64K128Over capacity————————
Sustained decode128K1Valid93.793.85,259 ms10.7 ms1.002,81130.0 s
Sustained decode128K2Valid158.774.37,763 ms13.5 ms2.004,76030.0 s
Sustained decode128K4Valid252.251.712,894 ms19.4 ms4.007,56430.0 s
Sustained decode128K8Valid387.332.123,191 ms31.2 ms8.0011,61630.0 s
Sustained decode128K16Over capacity————————
Sustained decode128K32Over capacity————————
Sustained decode128K64Over capacity————————
Sustained decode128K128Over capacity————————
Sustained decode256K1Requests queued47.560.87,074 ms16.4 ms0.901,42530.0 s
Sustained decode256K2Requests queued59.248.011,868 ms21.0 ms1.701,77430.0 s
Sustained decode256K4Valid170.035.419,842 ms28.4 ms4.005,10030.0 s
Sustained decode256K8Over capacity————————
Sustained decode256K16Over capacity————————
Sustained decode256K32Over capacity————————
Sustained decode256K64Over capacity————————
Sustained decode256K128Over capacity————————
Sustained decode512K1Over capacity————0.80030.0 s
Sustained decode512K2Over capacity————1.50030.0 s
Sustained decode512K4Over capacity————————
Sustained decode512K8Over capacity————————
Sustained decode512K16Over capacity————————
Sustained decode512K32Over capacity————————
Sustained decode512K64Over capacity————————
Sustained decode512K128Over capacity————————
Sustained decode1016K1Over capacity————0.80030.0 s
Sustained decode1016K2Over capacity————————
Sustained decode1016K4Over capacity————————
Sustained decode1016K8Over capacity————————
Sustained decode1016K16Over capacity————————
Sustained decode1016K32Over capacity————————
Sustained decode1016K64Over capacity————————
Sustained decode1016K128Over 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.