Bare-metal GPU for business · 96 GB VRAM · Katowice

TESTS & GUIDES

LLM context and concurrent requests: server throughput versus response time

How 2,048/8,192 input tokens and 1/4 concurrent requests affect Qwen3 TTFT and throughput on RTX PRO 6000 Blackwell Max-Q. Measured API results.

Conceptual GPU module with subtle streams of data.
AI illustration.

More tokens per second for a server does not necessarily mean a faster answer for one person. With 2,048 input tokens in our Qwen3-8B test, moving from one to four concurrent requests increased aggregate throughput from 171.22 to 312.65 tokens/s. Median complete-response time also increased, from 1.49 to 3.26 seconds.

This matters when designing an internal assistant or API: throughput describes the amount of work completed, while latency describes the wait for a particular response. One cannot be directly substituted for the other.

Qwen3-8B streaming API results

Each request generated 256 tokens. TTFT is measured from the client's request start to its first received generated-token event. Complete-response time includes finishing that response. Both times are medians; throughput is the mean of three rounds.

Input tokens per request Concurrent requests Median TTFT Median complete response Aggregate output throughput
2,048 1 0.19 s 1.49 s 171.22 tokens/s
2,048 4 0.70 s 3.26 s 312.65 tokens/s
8,192 1 0.85 s 2.37 s 107.84 tokens/s
8,192 4 2.49 s 6.56 s 154.86 tokens/s

The single-request cases contain three measured responses each; the four-request cases contain twelve each. This series therefore comprises 30 successfully completed responses. Downloads also include the 95th percentile, but with such small samples it only describes the sample, not a dependable production p95 guarantee.

Interpreting the results

With 8,192 input tokens, four concurrent requests delivered higher aggregate throughput than one, but median first-token time increased from about 0.85 to 2.49 seconds. Increasing concurrency therefore had a latency cost. Prompt length has a separate effect: with one request, increasing input from 2,048 to 8,192 tokens increased TTFT from about 0.19 to 0.85 seconds.

This does not mean the server supports only four users. We measured simultaneous requests, not accounts or people. An application whose users type occasionally differs from a batch process that continuously keeps four generations active. We did not test more than four concurrent requests here.

Round throughput is total generated tokens divided by the time to finish the entire round. That time includes prompt processing, waiting and generation. It is therefore different from decode-only speed in our llama-bench engine microbenchmark.

Settings and experimental scope

We used one RTX PRO 6000 Blackwell Max-Q with 96GB VRAM, a 300W power limit, an EPYC 4565P and 96GB system RAM. OS: Rocky Linux 10.2; driver: NVIDIA 595.91.07; engine: pinned llama.cpp 0.5.0-dev, b11146; model: Qwen3-8B Q4_K_M.

The server had four slots with 8,704 context tokens each, F16 KV cache and Flash Attention enabled. That allocation remained unchanged when only one request was active. Automatic configuration fitting and context shifting were disabled.

We tokenized public test text, repeated its tokens and truncated them to exactly 2,048 or 8,192 tokens. One unmeasured warmup request on slot 0 preceded each measurement group; it was not a round of four concurrent clients. We then ran three measured rounds for that group. Prompt caching was disabled and response counters checked so that reusing a prompt could not masquerade as full input processing. Output was fixed at 256 tokens, ignoring earlier EOS. This is a synthetic infrastructure test, not an evaluation of meaningful answers.

The client and server communicated over localhost. These times exclude a client's connection from Poland, Germany or any other country, VPNs, external proxies and the public network. The /completion protocol is documented in the exact llama-server revision used.

Longer context: two further attempts

We repeated the extended Qwen3-8B Q4_K_M test with 2,048, 8,192 and 32,768 input tokens and 1 or 4 concurrent requests. This time, the harness would stop the workload at 90°C or a T.Limit margin of 2°C or less, with GPU readings every second. These are our test thresholds, not a change to factory protections. The 300W power limit and fan settings remained unchanged.

Each attempt used four slots of 33,280 tokens, or 133,120 allocated context tokens, rather than the 34,816 used for the original table. We do not pool results or memory readings from these different configurations.

Attempt with the new threshold Complete cases Completed rounds / responses Outcome
First attempt 6 of 6 18 / 45 Stopped during the final process check; highest sampled temperature 87°C
Repeat 5 of 6 17 / 41 Stopped at the harness's 90°C threshold

The first attempt finished all measured cases but did not complete the overall campaign successfully. In the repeat, the 32,768-token / 4-request case completed only two of its three rounds. The record contains 148 GPU readings at a nominal one-second interval. At the stop, temperature was 90°C and T.Limit margin was 3°C: the temperature threshold triggered, not the margin threshold. In that sample, SW/HW thermal slowdown were “Not Active”, while power capping was “Active”. A harness stop alone does not establish a hardware fault or protective GPU shutdown.

We did not launch further tests after that stop. 32B, 72B and the four-hour test were not run under the new threshold. Both separate JSON records are available to download; we neither construct a complete series from fragments of different attempts nor replace the original table and chart with them.

Earlier attempts with the 85°C threshold

The short, completed 8B series in the table above reached a maximum sampled temperature of 73°C. A separate, earlier extension to 32,768 tokens stopped at the harness's 85°C threshold. That is not a temperature limit declared by the GPU manufacturer.

We do not add incomplete series to the completed-results table or present their average throughput as a comparison result. None of these short attempts establishes multi-hour stability.

What this test does not establish

We did not measure answer quality, RAG accuracy, service availability or an application SLA. Production validation needs your prompts, a realistic request arrival pattern and longer observation of queues and errors.

Before choosing a configuration, identify typical and maximum prompt lengths, output length, simultaneous generations and acceptable time to first token. Describe your workload, or start with the local API and SSH-tunnel guide.

Aggregate API throughput with 8,192 input tokens
  1. Qwen3-8B · 1 concurrent request107.84107.84 tok/s
  2. Qwen3-8B · 4 concurrent requests154.86154.86 tok/s

Mean of 3 rounds; time includes input processing, waiting and 256 output tokens per request. Aggregate throughput, not one user's generation speed.

Download the data

Public test results and settings, without credentials or administrative identifiers.