# DSpark speculative decoding on two DGX Spark: the 1M-token depth curve

> Our fp8 DSpark bring-up on GB10, an independent reproduction of the community NVFP4 build, and the depth data nobody had published: the single-stream curve to a real million-token prompt — plus two negative results, stated as such.

- Published: 2026-08-05
- Evidence level: lab_single_run
- Funding: Self-funded internal research
- Canonical: https://agmind.ai/reports/dspark-speculative-1m-dgx-spark/

> **Scope note.** This study ran on the lab's DGX Spark pair with the
> repository's own benchmark suite — apples-to-apples throughput as
> `completion_tokens / wall_time`, non-streaming (streamed SSE event counts
> undercount real tokens badly, which is exactly why the method is pinned).
> It is not part of the claim registry behind our tested-configuration
> cards: the numbers below are quoted from the published repository, where
> the raw checkpoints sit next to them.

## Two recipes, honestly attributed

DeepSeek's DSpark speculative decoding serves DeepSeek-V4-Flash across two
DGX Spark (GB10, sm_121) nodes, TP=2 over 200G RoCE, at a configured
million-token window. The repository carries two lines and is explicit
about which is whose: the **fp8 DSpark bring-up is ours** — the draft head
and proposer wired into vLLM as patches, plus the numerical fixes that took
the draft from predicting noise to matching the reference. The **faster
NVFP4-KV line is tonyd2wild's recipe**: we reproduced it byte-identically
on our own cluster and measured it; we did not author it, and we claim no
speed win over it — our reproduction of his concurrency benchmark lands
inside his own run-to-run variance.

## The depth curve nobody had published

The community had single-depth numbers; what was missing was the curve. On the NVFP4 build, single-stream decode runs 42.7 tok/s at 16K context, 17.6 at 512K, and 17.2 at a real 1,032,953-token prompt — the curve flattens past 512K instead of collapsing.
At full depth, a cold prefill takes about 642 seconds; with the prefix cache warm, the same request starts in about 4 seconds.
A configured million-token window on consumer silicon is real — if you plan
around the prefill bill and know the decode floor you will live on.

## Why the speed behaves this way

The mechanism is acceptance, not bandwidth: with speculation disabled both KV builds decode at an essentially identical ~26.6 tok/s — the NVFP4 line wins by keeping more speculative tokens accepted per step, and per-position acceptance decay is what drives the depth curve down.
Concurrency is where the box earns its keep: our fp8 line sustains ~99 tok/s aggregate at 8 streams and 141–146 tok/s at 12, and single-stream speculation is worth +21–24% over no-spec.

## Two negative results, published as results

- **No sampler configuration reliably fixes long-context coherence** on
  this build: the collapse is not a fixed depth threshold, and `min_p` is
  outright blocked under spec-decode — the probe is in the repository as a
  first-class benchmark file, not a footnote.
- **Our attempted improvements over the reproduced build did not win**:
  the honest summary in the repository says so in those words, with the
  tie shown against the author's own variance.

## Why this belongs in the lab's record

This is the posture the lab sells, applied to ourselves: reproduce someone
else's result before comparing to it, publish the curve with its raw
checkpoints, credit the lineage, and file the failures next to the wins.
The DGX Spark lane still has no methodology-v1 cells — that stays the
planned next step — but the depth curve, the acceptance mechanism and both
negatives are quotable today from the repository.

## Evidence

Recipes, patches, benchmark checkpoints and raw outputs:
[DeepSeek-V4-Flash-DSpark-GB10-2x-DGX-Spark-1m-fp4-fp8](https://github.com/botAGI/DeepSeek-V4-Flash-DSpark-GB10-2x-DGX-Spark-1m-fp4-fp8).
Upstream NVFP4-KV recipe: tonyd2wild (credited in the repo). Related lab
material: the [MoE-kernel finding](https://agmind.ai/reports/dsv4-flash-moe-backend-dgx-spark/)
on the same pair and the earlier
[1M serving study](https://agmind.ai/reports/dspark-dgx-spark-1m-legacy/). Russian long-reads:
[part 5](https://habr.com/ru/articles/1050470/) and
[the 0731 study](https://habr.com/ru/articles/1066164/) on Habr.

---

Machine-readable claim registry: https://agmind.ai/claims.json · llms.txt: https://agmind.ai/llms.txt
