Primeros pasosClasificaciónDecode calculatorModelosOrganizationsReportsMatrix runsHardwareEvaluaciones comparativasMarketplaceAlquileresProDocs de API
Idioma
Actual Computer — Every computer, one endpoint

Speed test matrix

GLM-4.7-218B-W4A16 on CMP 170HX 64GB ×2

vllm · 0.32.0rc1.dev249+g18305948a · AutoRound W4A163 contexts (0–32K) × 8 concurrency levels (1–128) · prefill at 8K, 16K, 32K
by @Sandbergllm-inference-bench v0.8.0Measured

Hardware

Type
Discrete GPU
GPU
CMP 170HX
GPU count
2
VRAM
64 GB (2 × 32 GB)
CPU
2x Intel Xeon E5-2630 v3
RAM
64 GB
OS
Ubuntu 26.04.1

Engine

Engine
vllm
Version
0.32.0rc1.dev249+g18305948a
Quantization
AutoRound W4A16
Backend
cuda
Build
ghcr.io/morrowmake/vllm-cmp170hx@sha256:5b45c4d6feafefe2eba962375b0a9a0b64fd22b9e05abb4d1966f14a32a2db79

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. Layout: PP2 (stock vLLM flag)
# 2x NVIDIA CMP 170HX 64GB (cmpunlocker), 180 W limit, PCIe Gen2 x4 | 2x Intel Xeon E5-2630 v3 | 64 GB DDR4 | Ubuntu 26.04.1, NVIDIA driver 610.57.04 | vLLM: Morrowmake vllm-cmp170hx image
vllm serve 0xSero/GLM-4.7-218B-W4A16 --max-model-len 40960 --gpu-memory-utilization 0.94 --max-num-seqs 128 --enable-prefix-caching --trust-remote-code --pipeline-parallel-size 2 --kv-cache-dtype int4_per_token_head --attention-backend TRITON_ATTN

Prefill

prompt tok/s by context length
8K context593.013,790 ms TTFT
16K context411.039,396 ms TTFT
32K context248.0130,176 ms TTFT

Sustained decode

total tok/s · rows are context length, columns are simultaneous requests
Context1248163264128
033.3204 ms TTFT50.4336 ms TTFT88.5325 ms TTFTOver capacityOver capacityOver capacityOver capacityOver capacity
16K20.3404 ms TTFTOver capacityOver capacityOver capacityOver capacityOver capacityOver capacityOver capacity
32K14.7Requests queued661 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. 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
Prefill8K1Valid593.0—13,790 ms——1——
Prefill16K1Valid411.0—39,396 ms——1——
Prefill32K1Valid248.0—130,176 ms——1——
Sustained decode01Valid33.333.4204 ms29.9 ms1.0099830.0 s
Sustained decode02Valid50.425.3336 ms39.6 ms2.001,51230.0 s
Sustained decode04Valid88.522.2325 ms45.0 ms4.002,65630.0 s
Sustained decode08Over capacity————————
Sustained decode016Over capacity————————
Sustained decode032Over capacity————————
Sustained decode064Over capacity————————
Sustained decode0128Over capacity————————
Sustained decode16K1Valid20.320.4404 ms49.1 ms1.0061030.0 s
Sustained decode16K2Over capacity————————
Sustained decode16K4Over capacity————————
Sustained decode16K8Over capacity————————
Sustained decode16K16Over capacity————————
Sustained decode16K32Over capacity————————
Sustained decode16K64Over capacity————————
Sustained decode16K128Over capacity————————
Sustained decode32K1Requests queued14.714.8661 ms67.7 ms1.0044129.9 s
Sustained decode32K2Over capacity————————
Sustained decode32K4Over capacity————————
Sustained decode32K8Over capacity————————
Sustained decode32K16Over capacity————————
Sustained decode32K32Over capacity————————
Sustained decode32K64Over capacity————————
Sustained decode32K128Over 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.