Speed test matrix
Nemotron-3-Nano-Omni-30B-A3B-Reasoning-FP8 on H200 NVL 141GB
vllm · 0.26.1rc1.dev638+g52be12cfa · FP86 contexts (8K–251K) × 8 concurrency levels (1–128) · prefill at 8K, 16K, 32K, 64K, 128K, 251K, 256K
Hardware
- Type
- Discrete GPU
- GPU
- H200 NVL
- VRAM
- 141 GB
- OS
- linux
Engine
- Engine
- vllm
- Version
- 0.26.1rc1.dev638+g52be12cfa
- Quantization
- FP8
- Backend
- cuda
- Repository
- github.com/vllm-project/vllm
- Build
- cuda-13.2
- Commit
52be12cfac0c
Run
- Served model
- nemotron
- Revision
- main
- Benchmark tool
- llm-inference-bench v0.4.29
- 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_h200-nvidia-nemotron/bin/vllm" serve nvidia/Nemotron-3-Nano-Omni-30B-A3B-Reasoning-FP8 --served-model-name nemotron --trust-remote-code --tensor-parallel-size 1 --reasoning-parser nemotron_v3 --enable-auto-tool-choice --tool-call-parser qwen3_coder --max-model-len 262144 --gpu-memory-utilization 0.886040 --host 0.0.0.0 --port 8000 --api-key <redacted> --video-pruning-rate 0.5 --max-num-seqs 384 --allowed-local-media-path / --media-io-kwargs '{"video":{"fps":2,"num_frames":256}}' --kv-cache-dtype fp8Prefill
prompt tok/s by context length8K context59.2K138 ms TTFT
16K context57.3K283 ms TTFT
32K context59K547 ms TTFT
64K context55.3K1,164 ms TTFT
128K context43K2,988 ms TTFT
251K context29.8K8,457 ms TTFT
256K context29.2K8,793 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 | 385.480 ms TTFT | 756.1127 ms TTFT | 1,207.6163 ms TTFT | 2,153.1247 ms TTFT | 2,424.5352 ms TTFT | 4,789.5550 ms TTFT | 1,210.8988 ms TTFT | 2,334.51,751 ms TTFT |
| 16K | 401.5109 ms TTFT | 632.0157 ms TTFT | 1,026.5171 ms TTFT | 2,051.7245 ms TTFT | 2,393.0335 ms TTFT | 4,419.8579 ms TTFT | 1,383.5934 ms TTFT | 3,643.41,510 ms TTFT |
| 32K | 348.2105 ms TTFT | 750.7144 ms TTFT | 1,069.1193 ms TTFT | 1,207.1247 ms TTFT | 2,470.5253 ms TTFT | 4,245.3347 ms TTFT | 2,085.91,180 ms TTFT | 3,139.22,179 ms TTFT |
| 64K | 339.9172 ms TTFT | 606.5232 ms TTFT | 1,026.8240 ms TTFT | 1,295.6263 ms TTFT | 2,287.0516 ms TTFT | 2,059.51,178 ms TTFT | 2,645.42,201 ms TTFT | 3,816.54,365 ms TTFT |
| 128K | 324.3295 ms TTFT | 575.0347 ms TTFT | 931.6409 ms TTFT | 1,291.5387 ms TTFT | 1,790.21,155 ms TTFT | 2,224.42,441 ms TTFT | 3,030.24,953 ms TTFT | 3,584.79,589 ms TTFT |
| 251K | 301.9555 ms TTFT | 524.5602 ms TTFT | 754.2566 ms TTFT | 1,122.6624 ms TTFT | 1,456.32,785 ms TTFT | 1,592.95,168 ms TTFT | 2,116.89,734 ms TTFT | Over capacity |
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 | 59.2K | — | 138 ms | — | — | 1 | — | — |
| Prefill | 16K | 1 | Valid | 57.3K | — | 283 ms | — | — | 1 | — | — |
| Prefill | 32K | 1 | Valid | 59K | — | 547 ms | — | — | 1 | — | — |
| Prefill | 64K | 1 | Valid | 55.3K | — | 1,164 ms | — | — | 1 | — | — |
| Prefill | 128K | 1 | Valid | 43K | — | 2,988 ms | — | — | 1 | — | — |
| Prefill | 251K | 1 | Valid | 29.8K | — | 8,457 ms | — | — | 1 | — | — |
| Prefill | 256K | 1 | Valid | 29.2K | — | 8,793 ms | — | — | 1 | — | — |
| Sustained decode | 8K | 1 | Valid | 385.4 | 2270.5 | 80 ms | 0.4 ms | 1.0 | 2 | 7,812 | 20.3 s |
| Sustained decode | 8K | 2 | Valid | 756.1 | 3825.0 | 127 ms | 0.3 ms | 2.0 | 4 | 17,312 | 22.9 s |
| Sustained decode | 8K | 4 | Valid | 1,207.6 | 687.7 | 163 ms | 2.2 ms | 4.0 | 8 | 31,685 | 26.2 s |
| Sustained decode | 8K | 8 | Valid | 2,153.1 | 1560.2 | 247 ms | 0.7 ms | 8.0 | 16 | 64,591 | 30.0 s |
| Sustained decode | 8K | 16 | Valid | 2,424.5 | 199.0 | 352 ms | 5.0 ms | 15.6 | 16 | 72,728 | 30.0 s |
| Sustained decode | 8K | 32 | Valid | 4,789.5 | 250.0 | 550 ms | 5.1 ms | 31.1 | 32 | 143,688 | 30.0 s |
| Sustained decode | 8K | 64 | Valid | 1,210.8 | 91.8 | 988 ms | 10.9 ms | 64.0 | 0 | 36,318 | 30.0 s |
| Sustained decode | 8K | 128 | Valid | 2,334.5 | 63.6 | 1,751 ms | 15.7 ms | 128.0 | 0 | 70,016 | 30.0 s |
| Sustained decode | 16K | 1 | Valid | 401.5 | 1198.0 | 109 ms | 0.8 ms | 1.0 | 2 | 8,313 | 20.7 s |
| Sustained decode | 16K | 2 | Valid | 632.0 | 1597.2 | 157 ms | 0.7 ms | 2.0 | 4 | 18,959 | 30.0 s |
| Sustained decode | 16K | 4 | Valid | 1,026.5 | 264.6 | 171 ms | 3.8 ms | 4.0 | 8 | 30,795 | 30.0 s |
| Sustained decode | 16K | 8 | Valid | 2,051.7 | 918.5 | 245 ms | 1.3 ms | 7.7 | 16 | 61,553 | 30.0 s |
| Sustained decode | 16K | 16 | Valid | 2,393.0 | 180.7 | 335 ms | 5.5 ms | 16.0 | 16 | 71,778 | 30.0 s |
| Sustained decode | 16K | 32 | Valid | 4,419.8 | 134.0 | 579 ms | 7.5 ms | 32.0 | 32 | 132,593 | 30.0 s |
| Sustained decode | 16K | 64 | Valid | 1,383.5 | 88.3 | 934 ms | 11.3 ms | 64.0 | 0 | 41,504 | 30.0 s |
| Sustained decode | 16K | 128 | Valid | 3,643.4 | 61.7 | 1,510 ms | 16.2 ms | 128.0 | 0 | 109,315 | 30.0 s |
| Sustained decode | 32K | 1 | Valid | 348.2 | 352.2 | 105 ms | 2.8 ms | 1.0 | 2 | 7,492 | 21.5 s |
| Sustained decode | 32K | 2 | Valid | 750.7 | 1063.6 | 144 ms | 1.8 ms | 2.0 | 4 | 16,174 | 21.5 s |
| Sustained decode | 32K | 4 | Valid | 1,069.1 | 276.9 | 193 ms | 3.6 ms | 4.0 | 8 | 32,073 | 30.0 s |
| Sustained decode | 32K | 8 | Valid | 1,207.1 | 212.9 | 247 ms | 4.7 ms | 8.0 | 8 | 36,213 | 30.0 s |
| Sustained decode | 32K | 16 | Valid | 2,470.5 | 164.1 | 253 ms | 6.1 ms | 15.9 | 16 | 74,115 | 30.0 s |
| Sustained decode | 32K | 32 | Valid | 4,245.3 | 123.2 | 347 ms | 8.2 ms | 31.7 | 32 | 127,362 | 30.0 s |
| Sustained decode | 32K | 64 | Valid | 2,085.9 | 80.3 | 1,180 ms | 12.5 ms | 64.0 | 0 | 62,570 | 30.0 s |
| Sustained decode | 32K | 128 | Valid | 3,139.2 | 55.1 | 2,179 ms | 18.2 ms | 128.0 | 0 | 94,208 | 30.0 s |
| Sustained decode | 64K | 1 | Valid | 339.9 | 344.7 | 172 ms | 2.9 ms | 1.0 | 2 | 10,196 | 30.0 s |
| Sustained decode | 64K | 2 | Valid | 606.5 | 312.1 | 232 ms | 3.2 ms | 1.9 | 4 | 16,810 | 27.7 s |
| Sustained decode | 64K | 4 | Valid | 1,026.8 | 251.5 | 240 ms | 4.0 ms | 4.0 | 8 | 30,802 | 30.0 s |
| Sustained decode | 64K | 8 | Valid | 1,295.6 | 204.4 | 263 ms | 4.9 ms | 7.9 | 8 | 38,869 | 30.0 s |
| Sustained decode | 64K | 16 | Valid | 2,287.0 | 148.5 | 516 ms | 6.7 ms | 15.8 | 16 | 68,604 | 30.0 s |
| Sustained decode | 64K | 32 | Valid | 2,059.5 | 104.5 | 1,178 ms | 9.6 ms | 32.0 | 0 | 61,774 | 30.0 s |
| Sustained decode | 64K | 64 | Valid | 2,645.4 | 69.0 | 2,201 ms | 14.5 ms | 64.0 | 0 | 79,367 | 30.0 s |
| Sustained decode | 64K | 128 | Valid | 3,816.5 | 44.4 | 4,365 ms | 22.5 ms | 128.0 | 0 | 114,521 | 30.0 s |
| Sustained decode | 128K | 1 | Valid | 324.3 | 332.2 | 295 ms | 3.0 ms | 1.0 | 2 | 9,727 | 30.0 s |
| Sustained decode | 128K | 2 | Valid | 575.0 | 294.8 | 347 ms | 3.4 ms | 2.0 | 4 | 17,252 | 30.0 s |
| Sustained decode | 128K | 4 | Valid | 931.6 | 231.5 | 409 ms | 4.3 ms | 4.0 | 4 | 27,947 | 30.0 s |
| Sustained decode | 128K | 8 | Valid | 1,291.5 | 172.5 | 387 ms | 5.8 ms | 7.9 | 8 | 38,747 | 30.0 s |
| Sustained decode | 128K | 16 | Valid | 1,790.2 | 119.5 | 1,155 ms | 8.4 ms | 16.0 | 6 | 53,681 | 30.0 s |
| Sustained decode | 128K | 32 | Valid | 2,224.4 | 81.7 | 2,441 ms | 12.2 ms | 32.0 | 0 | 66,727 | 30.0 s |
| Sustained decode | 128K | 64 | Valid | 3,030.2 | 52.2 | 4,953 ms | 19.2 ms | 64.0 | 0 | 90,890 | 30.0 s |
| Sustained decode | 128K | 128 | Valid | 3,584.7 | 32.2 | 9,589 ms | 31.1 ms | 128.0 | 0 | 107,491 | 30.0 s |
| Sustained decode | 251K | 1 | Valid | 301.9 | 309.1 | 555 ms | 3.2 ms | 1.0 | 2 | 9,058 | 30.0 s |
| Sustained decode | 251K | 2 | Valid | 524.5 | 274.2 | 602 ms | 3.6 ms | 1.9 | 4 | 15,736 | 30.0 s |
| Sustained decode | 251K | 4 | Valid | 754.2 | 210.0 | 566 ms | 4.8 ms | 3.9 | 4 | 22,624 | 30.0 s |
| Sustained decode | 251K | 8 | Valid | 1,122.6 | 150.0 | 624 ms | 6.7 ms | 7.8 | 8 | 33,679 | 30.0 s |
| Sustained decode | 251K | 16 | Valid | 1,456.3 | 96.7 | 2,785 ms | 10.3 ms | 16.0 | 0 | 43,680 | 30.0 s |
| Sustained decode | 251K | 32 | Valid | 1,592.9 | 61.0 | 5,168 ms | 16.4 ms | 32.0 | 0 | 47,783 | 30.0 s |
| Sustained decode | 251K | 64 | Valid | 2,116.8 | 36.3 | 9,734 ms | 27.6 ms | 64.0 | 0 | 63,499 | 30.0 s |
| Sustained decode | 251K | 128 | Over capacity | — | — | — | — | — | — | — | — |
Over capacity: not run because this many requests at this context would exceed the server's KV cache.
