Report

Beelink GTR9 Pro for local LLMs: what two units measured over a month of serving

Reviews of this box benchmark it for a week. We bought two, froze the workloads, and have been serving from them since: the software stack that works, what the numbers look like, how the two units compare, and the parts we still cannot vouch for.

lab_repeated internal research August 21, 2026 · Funding: Self-funded internal research

Two commercially identical Beelink GTR9 Pro units — Ryzen AI Max+ 395, 128 GB of LPDDR5X-8000 unified memory, Radeon 8060S (gfx1151), dual 10GbE — are the machines behind most of the numbers in our claim registry. This page is what a month of using them for actual serving taught us: the software stack that works, what the box measurably does, where the two units agreed, and the parts we still will not vouch for.

Why two identical boxes

Because one box cannot tell you whether a number is a property of the hardware or of your particular unit. Buying the second one is how a measurement stops being an anecdote: the same frozen workload, the same pinned runtime and model artifact, run on both. Claims in our registry carrying the lab_unit_replicated level are the ones where the pattern showed up on both machines — that is what the level means, and it is the main reason we own a duplicate instead of a second, different box.

The software stack that works

The configuration our serving node runs today, read off the machine rather than off a wiki:

kernel   7.0.0-28-generic
Vulkan   RADV (GFX1151), Mesa 25.2.8
runtime  llama.cpp server, pinned by image digest

The Vulkan path through RADV is what we serve on. ROCm also runs on this hardware, and both backends passed every correctness gate we put in front of them — the difference showed up as decode pace, not quality, and the side-by-side is a comparison page. On the networking side, both 10GbE interfaces have been up throughout; the box’s Wi-Fi is disabled on ours because a serving node has no business holding a radio link.

The one configuration item worth reading before you buy: memory allocation on Linux does not work the way the BIOS menu suggests, and the setting that decides whether large models load is a kernel parameter, not a firmware slider. That page exists because it cost us time first.

What the box does

Serving a 35B-class MoE model at Q4_K_M, everyday requests, reasoning off: first answer token in 210msunit_replicated, decoding at 15.9ms/tokenrepeated. Under four simultaneous chats the first-word wait becomes 338msrepeated, and at eight 865msrepeated with completion holding at 100.0% of requestsrepeated.

Structured automation: strict-JSON tasks completed at 100.0% of requestsrepeated. Long-context retrieval on documents up to 32k tokens: 100.0% of requestsrepeated, with the prefill bill for that document size at 33965msrepeated — the number document workflows should be planning around.

The full measured tables live in the benchmark repository, and each figure has a permanent page in the registry.

Does it hold up as a serving box

Three continuous hours at concurrency four moved the decode pace by 1.6%single_run, sustained at 30.0ms/tokensingle_run — on both units, with the same shape. The endurance report is the long version of the answer to “does this thing throttle if I actually use it”.

Beyond the frozen tests, the softer evidence: one of the units has been up for over a week of continuous mixed duty at the time of writing, serving models while we work on other things. Uptime is not a benchmark, and we are not presenting it as one — but a box that needs babysitting does not accumulate quiet weeks.

What we cannot vouch for

Two units are not a batch. Everything above describes our two machines. Manufacturing variance, revisions and firmware differences across a production run are exactly the kind of thing two samples cannot measure, and our testbed page states this limit plainly.

We have not tested it as a desktop. No display-output testing, no gaming, no thermals under GPU graphics load — these are serving nodes and we measured serving.

No comparison against boxes we do not own. Other vendors ship the same silicon, and roundups comparing them are easy to write and impossible to verify. We measured this one because we have it.

No price advice. Hardware prices move; the lab does not publish them.

If you have one

Run the frozen workloads yourself — the harness is public and the reproduction contract means a confirmed independent run raises a claim’s evidence level and a failed one gets published too. A second, third and fourth GTR9 Pro in other people’s hands is how “two units agreed” turns into something stronger than two units agreeing.

Related tested configurations

Cite this report

AGmind Systems Lab (2026-08-21). Beelink GTR9 Pro for local LLMs: what two units measured over a month of serving. Evidence level: lab_repeated. https://agmind.ai/reports/beelink-gtr9-pro-local-llm/
← Reports