Speed test matrix
Qwen3.8-27B-FP8 on RTX PRO 6000 Blackwell Server Edition 96GB
sglang · 0.5.6.post3.dev11565+gfa7784d14 · FP86 contexts (8K–251K) × 8 concurrency levels (1–128) · prefill at 8K, 16K, 32K, 64K, 128K, 251K, 256K
Hardware
- Type
- Discrete GPU
- GPU
- RTX PRO 6000 Blackwell Server Edition
- VRAM
- 96 GB
- OS
- linux
Engine
- Engine
- sglang
- Version
- 0.5.6.post3.dev11565+gfa7784d14
- Quantization
- FP8
- Backend
- cuda
- Repository
- github.com/sgl-project/sglang
- Build
- cuda-13.2
- Commit
fa7784d140ee
Run
- Served model
- qwen
- Revision
- main
- Benchmark tool
- llm-inference-bench v0.7.6
- 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-radixark-sglang-fa7784d140ee/bin/sglang" serve --model-path Qwen/Qwen3.8-27B-FP8 --served-model-name qwen --trust-remote-code --tp 1 --reasoning-parser qwen3 --tool-call-parser qwen3_coder --context-length 262144 --mem-fraction-static 0.76 --enable-metrics --host 0.0.0.0 --port 8000 --api-key <redacted> --mamba-radix-cache-strategy extra_buffer --linear-attn-backend triton --kv-cache-dtype fp8_e4m3 --attention-backend flashinfer --fp8-gemm-backend cutlass --speculative-algorithm DSPARK --speculative-draft-model-path RadixArk/Qwen3.8-27B-DSpark --speculative-draft-model-quantization unquant --speculative-draft-attention-backend flashinfer --speculative-dspark-block-size 7 --speculative-num-steps 1 --speculative-eagle-topk 1
Prefill
prompt tok/s by context length8K context9,770839 ms TTFT
16K context9,1831,761 ms TTFT
32K context8,2463,900 ms TTFT
64K context6,6659,621 ms TTFT
128K context4,84026,456 ms TTFT
251K context3,12080,433 ms TTFT
256K context3,07783,180 ms TTFT
Sustained decode
total tok/s · rows are context length, columns are simultaneous requests| Context | 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 |
|---|---|---|---|---|---|---|---|---|
| 8K | 86.136 ms TTFT | 157.4405 ms TTFT | 285.1145 ms TTFT | 456.3294 ms TTFT | 507.8Requests queued271 ms TTFT | 515.0Requests queued92 ms TTFT | Over capacity | Over capacity |
| 16K | 70.339 ms TTFT | 148.01,842 ms TTFT | 286.871 ms TTFT | 407.190 ms TTFT | 476.2Requests queued196 ms TTFT | Over capacity | Over capacity | Over capacity |
| 32K | 83.040 ms TTFT | 147.765 ms TTFT | 261.777 ms TTFT | 414.195 ms TTFT | Over capacity | Over capacity | Over capacity | Over capacity |
| 64K | 86.047 ms TTFT | 138.975 ms TTFT | 241.3106 ms TTFT | Over capacity | Over capacity | Over capacity | Over capacity | Over capacity |
| 128K | 73.057 ms TTFT | 118.891 ms TTFT | Over capacity | Over capacity | Over capacity | Over capacity | Over capacity | Over capacity |
| 251K | 53.2141 ms TTFT | 116.095 ms TTFT | Over capacity | Over capacity | Over capacity | Over capacity | Over capacity | Over 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.| Phase | Context | Requests at once | Status | Total tok/s | Per request tok/s | TTFT | Time between tokens | Average active requests | Completed requests | Output tokens | Measured for |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Prefill | 8K | 1 | Valid | 9,770.0 | — | 839 ms | — | — | 1 | — | — |
| Prefill | 16K | 1 | Valid | 9,183.0 | — | 1,761 ms | — | — | 1 | — | — |
| Prefill | 32K | 1 | Valid | 8,246.0 | — | 3,900 ms | — | — | 1 | — | — |
| Prefill | 64K | 1 | Valid | 6,665.0 | — | 9,621 ms | — | — | 1 | — | — |
| Prefill | 128K | 1 | Valid | 4,840.0 | — | 26,456 ms | — | — | 1 | — | — |
| Prefill | 251K | 1 | Valid | 3,120.0 | — | 80,433 ms | — | — | 1 | — | — |
| Prefill | 256K | 1 | Valid | 3,077.0 | — | 83,180 ms | — | — | 1 | — | — |
| Sustained decode | 8K | 1 | Valid | 86.1 | 87.6 | 36 ms | 11.4 ms | 1.0 | 0 | 2,582 | 30.0 s |
| Sustained decode | 8K | 2 | Valid | 157.4 | 81.6 | 405 ms | 12.3 ms | 2.0 | 0 | 4,722 | 30.0 s |
| Sustained decode | 8K | 4 | Valid | 285.1 | 72.5 | 145 ms | 13.8 ms | 4.0 | 0 | 8,550 | 30.0 s |
| Sustained decode | 8K | 8 | Valid | 456.3 | 59.7 | 294 ms | 16.8 ms | 8.0 | 0 | 13,676 | 30.0 s |
| Sustained decode | 8K | 16 | Requests queued | 507.8 | 57.9 | 271 ms | 17.3 ms | 8.3 | 9 | 15,234 | 30.0 s |
| Sustained decode | 8K | 32 | Requests queued | 515.0 | 60.0 | 92 ms | 16.7 ms | 8.4 | 9 | 15,440 | 30.0 s |
| Sustained decode | 8K | 64 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 8K | 128 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 16K | 1 | Valid | 70.3 | 74.8 | 39 ms | 13.4 ms | 1.0 | 0 | 2,108 | 30.0 s |
| Sustained decode | 16K | 2 | Valid | 148.0 | 76.8 | 1,842 ms | 13.1 ms | 2.0 | 0 | 4,439 | 30.0 s |
| Sustained decode | 16K | 4 | Valid | 286.8 | 72.5 | 71 ms | 13.8 ms | 4.0 | 0 | 8,597 | 30.0 s |
| Sustained decode | 16K | 8 | Valid | 407.1 | 53.2 | 90 ms | 18.8 ms | 8.0 | 0 | 12,211 | 30.0 s |
| Sustained decode | 16K | 16 | Requests queued | 476.2 | 55.3 | 196 ms | 18.1 ms | 8.6 | 9 | 14,269 | 30.0 s |
| Sustained decode | 16K | 32 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 16K | 64 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 16K | 128 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 32K | 1 | Valid | 83.0 | 85.7 | 40 ms | 11.7 ms | 1.0 | 0 | 2,489 | 30.0 s |
| Sustained decode | 32K | 2 | Valid | 147.7 | 76.3 | 65 ms | 13.1 ms | 2.0 | 0 | 4,428 | 30.0 s |
| Sustained decode | 32K | 4 | Valid | 261.7 | 68.3 | 77 ms | 14.7 ms | 4.0 | 0 | 7,849 | 30.0 s |
| Sustained decode | 32K | 8 | Valid | 414.1 | 54.0 | 95 ms | 18.5 ms | 8.0 | 0 | 12,409 | 30.0 s |
| Sustained decode | 32K | 16 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 32K | 32 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 32K | 64 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 32K | 128 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 64K | 1 | Valid | 86.0 | 87.2 | 47 ms | 11.5 ms | 1.0 | 0 | 2,580 | 30.0 s |
| Sustained decode | 64K | 2 | Valid | 138.9 | 72.6 | 75 ms | 13.8 ms | 2.0 | 0 | 4,166 | 30.0 s |
| Sustained decode | 64K | 4 | Valid | 241.3 | 63.2 | 106 ms | 15.8 ms | 4.0 | 0 | 7,239 | 30.0 s |
| Sustained decode | 64K | 8 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 64K | 16 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 64K | 32 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 64K | 64 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 64K | 128 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 128K | 1 | Valid | 73.0 | 75.3 | 57 ms | 13.3 ms | 1.0 | 0 | 2,188 | 30.0 s |
| Sustained decode | 128K | 2 | Valid | 118.8 | 63.8 | 91 ms | 15.7 ms | 2.0 | 0 | 3,563 | 30.0 s |
| Sustained decode | 128K | 4 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 128K | 8 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 128K | 16 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 128K | 32 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 128K | 64 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 128K | 128 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 251K | 1 | Valid | 53.2 | 58.5 | 141 ms | 17.1 ms | 1.0 | 0 | 1,595 | 30.0 s |
| Sustained decode | 251K | 2 | Valid | 116.0 | 59.4 | 95 ms | 16.8 ms | 2.0 | 0 | 3,474 | 30.0 s |
| Sustained decode | 251K | 4 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 251K | 8 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 251K | 16 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 251K | 32 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 251K | 64 | Over capacity | — | — | — | — | — | — | — | — |
| Sustained decode | 251K | 128 | Over 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.
