[bmdpat]
All writing
5 min read

A GPU Driver Is Not a Local LLM Benchmark

My 2026-08-20 RTX 5090 report lists driver 610.88 and 17 benchmark rows. That does not show the driver changed model speed.

Share LinkedIn

My RTX 5090 report on 2026-08-20 named NVIDIA driver 610.88. It also carried 17 benchmark rows. I did not write that the driver made any local model faster.

Short answer: A driver version belongs in a local LLM benchmark receipt, but it is not a benchmark result. To claim that a driver changed model speed or task quality, I need a controlled before-and-after run through the same runtime path. Canonical URL: https://bmdpat.com/blog/gpu-driver-not-local-llm-benchmark-2026

Local AI research workbench used to record GPU driver context beside benchmark receipts

Why is a GPU driver version not a benchmark result?

A version string tells me what was installed when I captured a result. It does not tell me what caused that result.

My 2026-08-20 vault notebook records NVIDIA driver 610.88 and 17 benchmark rows. The public 5090 Reports page is the same notebook series. On 2026-08-20 it still showed the 2026-07-09 artifact: driver 610.62 and 6 measured rows.

The 2026-08-20 notebook has useful data. It does not contain a matched pair that runs one workload before and after the driver change. Without that pair, I cannot separate a driver effect from a different model load, batch setting, context size, or work on the host.

This boundary matters because a local model stack has more than one moving part. The GPU driver sits below CUDA, the runtime, the model file, the quant, and the request. A new number after any one change is a new observation. It is not yet a cause.

What must stay fixed when I test a driver change?

I keep the production route fixed first. My measurements use Ollama's generate API, not a separate benchmark binary. The Ollama generate API is the route whose result matters to the sizing work.

For a useful pair, I keep the model tag, quant, Ollama version, API request, num_ctx, num_predict, temperature, and GPU placement fixed. I also keep the host quiet enough to record what else ran during each test.

Then I capture more than tokens per second. I record load time, prompt work, output rate, generated token count, GPU memory, power when I have it, and the task result. A driver test needs the same proof fields as any other local model test.

The VRAM fit and runtime support check covers a related trap. A model can fit in VRAM and still fail on the runtime route. A driver update can also leave the model route unchanged. Both facts belong in the receipt.

What does the 2026-08-20 report actually say?

The vault notebook says the RTX 5090 had driver 610.88 when the 2026-08-20 report ran. It says benchmark data was present. It lists 17 rows from its benchmark inputs. The public page is not that receipt.

That gives me a hardware snapshot and a source list. It does not give me a driver comparison. Some rows record an Ollama version and workload details. The report does not mark a row as the same run from before this driver version.

I keep that difference clear in public notes. The driver value is context. The benchmark row is evidence for only the route, settings, and task that the row names.

How do I make a driver claim that holds up?

I start with an old receipt that has the full settings. I change the driver and nothing else that affects the route. I rerun the same request enough times to see the spread. I keep the outputs and task checks beside the timing data.

Then I compare the pair. If the task result changes, I inspect the output before I call it better or worse. If the output rate moves but the host state differs, I call the result inconclusive. If the pair stays close, I say the test found no material change for that route.

This is the same discipline behind my benchmark provenance snapshot. A result stays useful when a later reader can see what changed and what stayed fixed.

What do I record after the next driver update?

I will add the driver version to the receipt. I will not make it the headline. The headline comes after a matched workload produces a measured difference that survives the task check.

This rule slows down one sentence. It saves time later. I do not have to retract a speed claim because the model had a warm cache, a different batch size, or a busy GPU.

Accompanying prompt

What the prompt does: checks whether a local LLM driver comparison has enough evidence for a speed or quality claim.

Copy/paste this prompt:

Copy-ready prompt

Paste the exact block into your coding agent.

No article chrome, no footnotes, no formatting drift.

Role: You review local LLM benchmark receipts. Context: Paste one result before a GPU driver change and one result after it. Task: 1. List every setting that changed between the two results. 2. Check the runtime path, model, quant, request, and host state. 3. Compare load time, output rate, memory, power, and task result. 4. Return a pass, hold, or inconclusive verdict for a driver claim. Output: - A table of fixed and changed fields. - The supported claim, if any. - The exact rerun needed for missing evidence. Constraints: - Treat a version string as context, not a result. - Do not claim cause from one unmatched run. - Keep task quality separate from output rate.
21 lines676 chars
Ready

This prompt and every other one we publish live in the free prompt library.

Copy the block above.

Get measured local AI notes by email: https://bmdpat.com/5090-reports

Get the Local AI Field Kit

Four copy-ready tools now, then one evidence-backed Local AI Lab Note on Friday when there is something worth sharing.

Get the requested artifact now, then at most one evidence-backed Local AI Lab Note on Friday when there is something worth sharing. One-click unsubscribe. No sponsored placements. Privacy.

PH

Patrick Hughes

Building BMD HODL — a one-person AI-operated holding company. Nashville, Tennessee. Twenty-Two agents.

More writing