Skip to content

Add an agent-shaped case and calibrate the long-context filler - #44

Merged
huangxinV587 merged 1 commit into
mainfrom
branch/ds-deploy-pool-20261107-r1
Nov 8, 2026
Merged

huangxinV587 merged 1 commit into
mainfrom
branch/ds-deploy-pool-20261107-r1

Conversation

@huangxinV587

Copy link
Copy Markdown
Contributor

The published cases topped out at a few thousand input tokens, which is not the shape an agent actually sends. Against a production endpoint the shortest band of real requests decoded far slower than the short-prompt cases suggested, because decode walks the whole KV each step — so a suite of short prompts alone overstates throughput for this workload.

agent-turn: roughly 67K input tokens with a few hundred output tokens, a long-context turn rather than a bulk-copy or retrieval probe.

Filler calibration: the generator assumed 1.6 characters per token and undersized every long case by about 45% — needle-32k really produced 17.5K tokens. At 2.92 the same spec measures 31,989 and 127,796 as named. The factor is a tokenizer approximation, so the docs now state that the case name is a magnitude and the receipt prompt_tokens is the truth.

docs/benchmarks.md gains a section on the gap between synthetic cases and live agent traffic.

Measured with the calibrated cases, 3 repeats, cold prefill, medians: agent-turn DeepInfer TTFT 11.23 s / TPOT 10.33 ms vs the shared vLLM endpoint 9.67 s / 7.03 ms. As always these are different topologies and no numbers are committed. 243 tests pass.

The published cases topped out at a few thousand input tokens, which is not the
shape an agent actually sends. Against a production endpoint the difference is
material: the shortest band of real requests decoded far slower than the
short-prompt cases suggested, because decode walks the whole KV each step. A
suite of short prompts alone therefore overstates throughput for this workload.

`agent-turn` fills that gap: roughly 67K input tokens with a few hundred output
tokens, i.e. a long-context turn rather than a bulk-copy or retrieval probe.

The filler was calibrated at 1.6 characters per token, which undersized every
long case by about 45%; `needle-32k` actually produced 17.5K tokens. At 2.92 the
same spec measures 31,989 and 127,796 as named. The factor is a tokenizer
approximation, so the docs now say the case name is a magnitude and the receipt's
`prompt_tokens` is the truth.

docs/benchmarks.md gains a section on the gap between synthetic cases and live
agent traffic, and advises re-measuring with a long-input case before judging a
deployment meant for agent backends.
@huangxinV587
huangxinV587 merged commit 68c3b54 into main Nov 8, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant