In three steps
Start it. Prove it answers. Push it to the knee.
Serving benchmarks are built and tested, and waiting for GPU verification. This page shows how they work; it shows no results, because none have been recorded on GPUs yet.
01 / 03 · Start
No load until it answers correctly.
A serving benchmark that measures a broken server is worse than none. Kernalin starts vLLM from a pinned image and checks it end to end before the first timed request.
- VRAM estimate refuse runs that cannot fit Coming soon
- Start vLLM from a pinned image digest allow-listed engine args only Coming soon
- Health check server is up Coming soon
- /v1/models the right model is loaded Coming soon
- Greedy smoke test it actually generates Coming soon
- Concurrency sweep begins AIPerf 0.13.0 or built-in load Coming soon
02 / 03 · Measure
The latencies a user notices.
Throughput alone hides the experience. Each step of the sweep records how long until the first token, how fast tokens keep coming, and how many requests met your SLA.
- TTFT time to first token p50·p90·p99
- TPOT time per output token p50·p90·p99
- ITL inter-token latency p50·p90·p99
- E2EL end-to-end request latency p50·p90·p99
- Goodput requests per second within your SLA req/s
- Throughput requests and tokens per second tok/s
- Memory peak VRAM and KV-cache peak GB
- Start-up time cold start to first answer s
03 / 03 · Decide
Find the knee before your users do.
Latency stays flat as concurrency rises, until it doesn’t. The knee is the most load you can serve inside your SLA: the number to size a fleet by.