Coding assistant: Qwen2.5-Coder-7B
Qwen2.5-Coder-7B (AWQ, 4-bit) · vLLM · RTX 5070 Ti 16 GB · a ~3,200-token code prompt in, a 256-token completion out.
concurrent users
Wait for the first word · 2 requests/s · shorter is better
Requests served · 4 requests/s
One GPU turned away 59 of 229 requests (503); two served all 224.
Twice the developers at the same latency. With the first token under ~5 seconds, one GPU serves 8 concurrent users and two serve 16.
Document extraction: Qwen2.5-VL-7B
Qwen2.5-VL-7B (AWQ) · vLLM · RTX 5070 Ti 16 GB · one document page per request (~3,100 input tokens), JSON out.
concurrent users
Wait for the first word · 2 pages/s · shorter is better
At 2 pages a second one GPU falls behind and its queue grows; two keep up.
Users served with the first word under 6 s
The answers don’t change. Extraction accuracy is the same on one and two GPUs; the second GPU only adds capacity. On invoices and insurance policy cards every field came back right on all 25 test documents of each kind (VIN aside, at 80%).
What this means for you
- Add a GPU, double the throughput. Both models served about twice as much on two GPUs, with the same model, code and settings.
- Same latency budget, twice the users. Under a ~5–6 s first-word target, one GPU serves 8 users and two serve 16.
- The cost per answer stays flat. At full load a page costs the same on one GPU or two. The second GPU buys capacity at the same price per answer.
- A single request is not faster on two GPUs. One request uses one copy of the model, so a second GPU adds capacity, not speed for one caller. On the coding model an answer starts in about 1.5 seconds either way.
How we measured
- vLLM 0.18 through Ray Serve LLM on RTX 5070 Ti 16 GB cards, one card per replica. “2 GPUs” is a second replica; nothing else changed.
- Closed loop: N users, each sending the next request once the last answer arrives (the charts and tables). Open loop: requests arrive at a fixed rate whether or not the server keeps up. That saturation test produced the “first word at 2 requests/s” and “requests served” figures.
- Answers are fixed at 256 tokens so every request does the same work. Latencies are client-side medians and include about 0.8 s of network to the endpoint.
- Dollar figures for document extraction use $0.75 per GPU-hour.
- We measured one and two GPUs only, so we don’t claim the same doubling beyond two.