Benchmarks & Comparisons7 min read

Two RTX 5090s on a 27B Model: 150 tok/s Alone, 1,300 at 32, Next to Four Other Cards

We measured a pair of RTX 5090s serving Qwen3.8-27B with the model split across both cards: 149 to 156 tok/s on one request, about 1,318 at 32, a 124k-token prompt prefilled in 40 seconds. The same test on two RTX A6000s, and the same method earlier on two RTX 4090s, an RTX PRO 6000 and an H200, in one table.

149–156 tok/s
one request, two cards
1,318 tok/s
in total at 32 concurrent requests
40.3 s
to the first token on a 124k-token prompt
0.5 s
for the same prompt sent again
The Paralon capybara resting a paw on each of two graphics cards joined by a bridge of light, a stream of tokens leaving the pair

A pair of RTX 5090s is a configuration we serve our largest model on and had never published a number for. On 12 October we ran the test we run on every card, on a provider's machine with two of them, and on a machine with two RTX A6000s the same morning. With the three cards we had measured the same way before, that makes five, and for the first time they can sit in one table.

The setup

GPUstwo NVIDIA RTX 5090, 32 GB each, over PCIe, power limit 400 W per card
HostRyzen 9 7950X3D, Ubuntu 24.04.5, native Linux, driver 595.84
Verified before listing1,526 GB/s of memory bandwidth
EnginevLLM 0.31.0
ModelQwen3.8-27B W4A16 (4-bit GPTQ), split across both cards (tensor parallel, 2)
KV cacheFP8, 805,349 tokens by vLLM's figure
Context window131,072
Also onMTP speculative decoding with three draft tokens, CUDA graphs, prefix caching, --max-num-seqs 128, reasoning effort low

Why split at all: our serving rule asks for 28,000 MB for this model, a little more than the 27,715 MB we count as usable on one 32 GB card, so the platform spreads it over the pair. The weights are shared out and the rest of both cards becomes cache, which is where the 131k window comes from. We measured a single RTX 5090 on this model in an earlier post: 94.7 tokens per second on one request.

Method, the same as in our RTX PRO 6000 post and the H200 one:

  • Every answer is exactly 256 tokens (min_tokens plus ignore_eos).
  • Requests go through our own proxy, straight to this worker.
  • Two runs per point, after a warm-up burst.

One difference from those two posts: this machine was in the pool and serving other people's requests while we measured. Read its numbers as a floor.

Throughput

concurrenttotal, run 1total, run 2per request
1149 tok/s156 tok/s149 to 156
8770 tok/s785 tok/s97
321,320 tok/s1,315 tok/s41
641,303 tok/s1,284 tok/s20

The two runs agree within 2% from 8 requests up.

The pair is at its ceiling by 32. Sixty-four requests get the same total as thirty-two, so each one gets half. Between 1 and 8 it scales well: eight times the requests for five times the tokens.

The platform's own load probe, which runs on every worker when it starts, read the same machine at 152 and 145 tok/s for one request on two occasions that day, and 975 and 961 across 16. Our figures and its figures were taken hours apart by different code.

The context

Prefill, one prompt at a time, time to the first token, nothing in the cache:

prompt tokensfirst tokenprefill rate
23,8746.3 s3,803 tok/s
61,80417.6 s3,507 tok/s
93,49028.4 s3,292 tok/s
124,28140.3 s3,085 tok/s

A prompt that nearly fills the window waits 40 seconds. Sent a second time, the same 124,281-token prompt answered in 0.5 seconds, with 124,224 tokens served from cache.

Five cards, one test

The same model, the same method, our own measurements. Totals in tokens per second.

1 request832~94k prompt, first tokenmeasured
H200 NVL, one card163 to 1761,0342,52712.1 s11 Oct
two RTX 5090s149 to 1567781,31828.4 s12 Oct
RTX PRO 6000, one card1066361,34225.7 s28 Sep
two RTX 4090s9438143566.5 s28 Sep
two RTX A6000s65 to 7643081648.4 s12 Oct

This table is not a controlled experiment, and three things in it are not equal:

  • The engine. The two September rows were measured on vLLM 0.27.1, the three October rows on 0.31.0. Some of the distance between a September row and an October row is the card and some is the engine.
  • The load. The H200 and the RTX PRO 6000 were serving nothing else. The RTX 5090s and the RTX A6000s were in the pool, taking other requests.
  • The cache. The H200 ran an unquantized KV cache, for the reason in its own post. The others ran FP8.

The prompt in the last column is also not the same length on every row: from 86,883 tokens on the RTX 4090s to 93,763 on the H200. The RTX 4090s' prefill figure is from 8 September, three weeks before their throughput figures.

With that said, three things stand out.

For one user, two RTX 5090s are close to an H200. 149 to 156 tokens per second against 163 to 176. The H200 pulls away only when the machine is shared: at 32 requests it delivers nearly twice as much.

At 32 requests two RTX 5090s and one RTX PRO 6000 land in the same place. 1,318 against 1,342. They get there differently: the pair is faster for a single request, the single 96 GB card has the full 262k window where the pair has 131k.

Two RTX A6000s have the most room and the least speed. They hold the model's full 262,144-token window, with 1,766,176 tokens of cache, more than any pair here. A single request on them is less than half as fast as on the RTX 5090s. It is a 2020 card: you rent it for the memory.

What it means if you are choosing

  • One person, long sessions, current-generation speed: two RTX 5090s.
  • A context longer than 131k: not this pair. An RTX PRO 6000, two RTX A6000s or an H200 take the full window.
  • Many people at once: the H200, by a distance.
  • The cheapest way to a long context: two RTX A6000s, if you can wait for the first token.

The prices are on each card's page and move with the market: they are what the machines available at that moment ask.

What we did not measure

  • A single RTX 5090 on this model with today's engine. Our serving rule does not place it there now, so there was no worker to measure; the 94.7 tok/s above is from September.
  • The same engine version on all five. That is what a real comparison needs.
  • Two RTX 5090s as two separate replicas instead of one split model. We did that for the RTX 4090 in an earlier post; on 32 GB cards the answer may differ, and we have not run it.
  • Output quality, which nothing here speaks to.

Run it yourself

Rent an RTX 5090 by the minute

From $0.63 an hour, billed for the minutes it runs, on a machine we benchmarked before listing it. No contract.

Keep reading

Related articles