はじめにリーダーボードDecode calculatorモデルOrganizationsReportsMatrix runsハードウェアベンチマークマーケットプレイスレンタルProAPIドキュメント
言語
Actual Computer — Every computer, one endpoint

Speed test matrix

Qwen3.5-4B-FP8-dynamic on RTX 3060 12GB

vllm · 0.32.0 · FP8 dynamic6 contexts (0–248K) × 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 3060
VRAM
12 GB
CPU
Intel Xeon E5-2680 v4 (14C)
RAM
32 GB
OS
Ubuntu 24.04.5

Engine

Engine
vllm
Version
0.32.0
Quantization
FP8 dynamic
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: MTP, 2 tokens lookahead. KV cache: int4_per_token_head
# 1x RTX 3060 12GB, stock 170 W limit, PCIe Gen3 x16 | Intel Xeon E5-2680 v4 14C | 32 GB DDR4-2400 | Ubuntu 24.04.5, NVIDIA driver 580.178.04
vllm serve RedHatAI/Qwen3.5-4B-FP8-dynamic --max-model-len 262144 --gpu-memory-utilization 0.94 --max-num-seqs 128 --enable-prefix-caching --trust-remote-code --language-model-only --speculative-config {"method":"mtp","num_speculative_tokens":2} --kv-cache-dtype int4_per_token_head --attention-backend TRITON_ATTN

Prefill

prompt tok/s by context length
8K context2,1863,727 ms TTFT
16K context1,7799,064 ms TTFT
32K context1,32524,215 ms TTFT
64K context875.073,169 ms TTFT
128K context523.0244,675 ms TTFT

Sustained decode

total tok/s · rows are context length, columns are simultaneous requests
Context1248163264128
063.596 ms TTFT125.0181 ms TTFT232.5247 ms TTFT428.8401 ms TTFT536.8Requests queued602 ms TTFT545.9Requests queued653 ms TTFTOver capacityOver capacity
16K44.92,662 ms TTFT86.04,875 ms TTFT165.87,472 ms TTFT288.913,298 ms TTFTOver capacityOver capacityOver capacityOver capacity
32K31.63,592 ms TTFT65.06,652 ms TTFT125.411,367 ms TTFTOver capacityOver capacityOver capacityOver capacityOver capacity
64K21.74,344 ms TTFT43.38,312 ms TTFTOver capacityOver capacityOver capacityOver capacityOver capacityOver capacity
128K8.3Requests queued13,783 ms TTFT2.3Requests queued22,260 ms TTFTOver capacityOver capacityOver capacityOver capacityOver capacityOver capacity
248KOver 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. 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
Prefill8K1Valid2,186.0—3,727 ms——1——
Prefill16K1Valid1,779.0—9,064 ms——1——
Prefill32K1Valid1,325.0—24,215 ms——1——
Prefill64K1Valid875.0—73,169 ms——1——
Prefill128K1Valid523.0—244,675 ms——1——
Sustained decode01Valid63.565.096 ms15.4 ms1.001,90330.0 s
Sustained decode02Valid125.063.2181 ms15.8 ms2.003,75030.0 s
Sustained decode04Valid232.559.6247 ms16.8 ms4.006,97330.0 s
Sustained decode08Valid428.854.6401 ms18.3 ms8.0012,85330.0 s
Sustained decode016Requests queued536.840.7602 ms24.6 ms13.0016,10630.0 s
Sustained decode032Requests queued545.939.6653 ms25.2 ms13.0016,37430.0 s
Sustained decode064Over capacity————————
Sustained decode0128Over capacity————————
Sustained decode16K1Valid44.945.62,662 ms21.9 ms1.001,34830.0 s
Sustained decode16K2Valid86.043.54,875 ms23.0 ms2.002,58030.0 s
Sustained decode16K4Valid165.839.37,472 ms25.5 ms4.004,97530.0 s
Sustained decode16K8Valid288.930.213,298 ms33.2 ms8.008,66230.0 s
Sustained decode16K16Over capacity————————
Sustained decode16K32Over capacity————————
Sustained decode16K64Over capacity————————
Sustained decode16K128Over capacity————————
Sustained decode32K1Valid31.632.33,592 ms30.9 ms1.0094730.0 s
Sustained decode32K2Valid65.032.86,652 ms30.5 ms2.001,94830.0 s
Sustained decode32K4Valid125.429.911,367 ms33.5 ms4.003,76030.0 s
Sustained decode32K8Over capacity————————
Sustained decode32K16Over capacity————————
Sustained decode32K32Over capacity————————
Sustained decode32K64Over capacity————————
Sustained decode32K128Over capacity————————
Sustained decode64K1Valid21.722.54,344 ms44.4 ms1.0065130.0 s
Sustained decode64K2Valid43.322.28,312 ms45.1 ms2.001,29730.0 s
Sustained decode64K4Over capacity————————
Sustained decode64K8Over capacity————————
Sustained decode64K16Over capacity————————
Sustained decode64K32Over capacity————————
Sustained decode64K64Over capacity————————
Sustained decode64K128Over capacity————————
Sustained decode128K1Requests queued8.314.913,783 ms67.1 ms0.8024829.9 s
Sustained decode128K2Requests queued2.37.922,260 ms224.0 ms1.507030.0 s
Sustained decode128K4Over capacity————————
Sustained decode128K8Over capacity————————
Sustained decode128K16Over capacity————————
Sustained decode128K32Over capacity————————
Sustained decode128K64Over capacity————————
Sustained decode128K128Over capacity————————
Sustained decode248K1Over capacity————1.00030.0 s
Sustained decode248K2Over capacity————————
Sustained decode248K4Over capacity————————
Sustained decode248K8Over capacity————————
Sustained decode248K16Over capacity————————
Sustained decode248K32Over capacity————————
Sustained decode248K64Over capacity————————
Sustained decode248K128Over capacity————————

Requests queued: the server could not run all requests at once, so some waited in a queue. Over capacity: not run because this many requests at this context would exceed the server's KV cache.