record(BENCH-QWEN38-27B): the clock excursion is the measured workload, so waiting for a quiet window cannot work - #1519
Merged
Conversation
…1 pairing is generated once per request by the workload (#915, #1386) The 2026-08-20 re-measure of the c1 cross-engine ratio did NOT run. `dgx:gpu0` was held by other sessions for the whole window — first `claude/dflash2-cuda-gate-w4r`, then `claude/mudler-ubuntu-box/fullmodel-guided-r12` at `BUDGET_S=14400` with a job queued behind it. No lease was taken and no leg was measured, so no number in this row moves. What the window produced instead is the CAUSE of the refusal, read out of the artifacts that already existed under `/mnt/nas_share/rc/q38bf16/out/` at no GPU cost. The SM-clock excursion that fails the within-run spread rule and the throttle rule is locked to the REQUEST TRAIN on both arms: all 12 flagged samples across the three vLLM c1 legs sit within 0.07 to 0.35 s of a request start under one constant per-leg offset, and the three offsets agree to 0.1 s. Its period is each arm's own per-request wall time, and our train reproduces the irregular 31.8 s gap that #1365's ~4 s TTFT outlier injects into ours. At c8 the excursions track the eight request waves and widen with the batched prefill. So the excursion is workload-generated, not thermal weather. That closes the route this spec used to name: waiting for a thermally quiet window cannot work, because the cause is the work being measured. It also makes the gate's observation floor and its spread rule mutually exclusive here — 30 busy samples at the measured 1.10 s cadence is ~33.0 s, against a 28.4 to 35.5 s excursion period — and it explains why the one c1-class cell that ever passed, c4, was flat: it was pinned at 2184 MHz, below the 2489 MHz median this decode runs at, so the governor had no headroom to take. Two corrections ride along. The clock-gate repair is SPEC ONLY: `96ed8346f` changed two files and `tools/bench/gpu_clock_state.py` still carries its single commit `51ec6bed5` with `MAX_WITHIN_RUN_SPREAD_PCT = 5.0` and no drift term, verified at `origin/main` `a50c57d69`. Re-running `compare` on the three archived pairings at that tool returns a real, unpiped exit code 1 on each. And the campaign `NOTES.txt` names a superseded binary, `ab0b9a1e...`, where `out/RESULT.txt` and a fresh hash both say `7d0c3caf...`. This edits records only. No `src/`, `include/` or `tests/` file changes, no measurement is accepted, and no lifecycle state moves, so `STATUS` and `BENCHMARKS` are not owed. Every quoted figure re-derives from the archived samples; the c8 vLLM leg remains not to be attempted on this box. Refs #915, #979, #1354, #1365, #1386. FOLLOWING_AGENTS_PROTOCOL Following-Agents-Protocol: true AI-Assisted: true Assisted-by: AGENT:claude-opus-5 [Claude Code]
…trailer gates run (#915) FOLLOWING_AGENTS_PROTOCOL `origin/main` advanced from `a50c57d69` to `141402e6c` while this record edit was being written, which made the base no longer an ancestor of the head, and `agent-preflight.sh --staged` SKIPPED `commit-trailers` and `commit-style` for that reason. A skipped gate reports nothing about the tree, so the merge is taken to make both of them actually run rather than to pick up the DFlash2 work this branch does not touch. The merge is textually clean and changes nothing this branch owns: `git diff --stat origin/main..HEAD` is one file, `.agents/specs/qwen38-27b-bf16-gate.md`, which the incoming commit does not touch. No keyed record was three-way merged. Following-Agents-Protocol: true AI-Assisted: true Assisted-by: AGENT:claude-opus-5 [Claude Code]
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The c1 cross-engine ratio is owed by #915 and #979 and was refused again on 2026-08-19 by
gpu_clock_state compare, on all three pairings, withPAIRING_VERDICT=DISCARD. The recorded route out was to wait for a thermally quiet window. That route cannot work, and this records why — derived from timing on artifacts that already existed, at zero GPU cost.The excursion is generated by the measured workload, once per request
Not weather, not heat soak, not another tenant:
128 / 4.4040 = 29.06 s; all five of vLLM's fall in 29.61-29.67 s against128 / 4.2835 = 29.88 s.The gate's two rules are mutually exclusive on this workload
MIN_BUSY_SAMPLES = 30at the measured 1.097 s cadence demands a window of 32.9 s. The excursion period is 28.4-35.5 s, median 33.2 s. Any window long enough to satisfy the observation floor necessarily spans at least one excursion, and every excursion breachesMAX_WITHIN_RUN_SPREAD_PCT = 5.0. No amount of quiet on the box changes that.So re-running the campaign today would have burned roughly 90 minutes of a contended box for a second
DISCARD. No lease was taken and no job was queued.Two corrections to the record
The clock-gate repair has not landed in code.
96ed8346fchanged exactly two files —.agents/issue-index.mdand.agents/specs/lease-clock-pinning.md. It landed the spec proposing the repair.tools/bench/gpu_clock_state.pystill carries its single commit51ec6bed5, still setsMAX_WITHIN_RUN_SPREAD_PCT = 5.0andMIN_BUSY_SAMPLES = 30, and has no drift term. That spec's own opening says the repair recovers nothing, because the untouched throttle rule refuses all nine windows independently.The fleet was not idle.
dgx:gpu0was held continuously by two other sessions during the attempt —claude/dflash2-cuda-gate-w4r, thenclaude/mudler-ubuntu-box/fullmodel-guided-r12on a four-hour budget.This also settles an open question in #1386
#1386 records that the dips cannot be distinguished between a load transition and a thermal excursion, and proposes adding
temperature.gpuandpower.drawtoQUERY_FIELDSto decide it. The alignment above settles it from timing alone, as a load transition, without those fields. Relaying that to #1386 is owed and is not done here.What the ratio now needs
An instrument decision, not another lease. Either pin the clock over the host path (#1354 — and note this is inferred, not measured: the one cell that passed, c4, was pinned flat at 2184 MHz, below the 2489 MHz decode median), or scope the within-run spread rule to the state it claims to police. The second changes gate semantics and owes its own row, a red-before mutation, and green-after evidence.
Unchanged
No ratio is derived or quoted. No pairing passed. Our c8 absolute stands as archived — output throughput mean 22.6247 tok/s, CV 0.205%, median ITL 232.83 ms, median TPOT 250.57 ms.
total_token_throughputremains corrupted by #1355 and is not quoted. vLLM c8 was not attempted, per the settled host-reboot finding in438305e15.Archived legs re-derived: our c1 6/6 x3, our c8 48/48 x3, vLLM c1 6/6 x3,
failed=0and zero non-emptyerrorson all nine.Records only — one file,
.agents/specs/qwen38-27b-bf16-gate.md(## Now,## Owed). No measurement was accepted and no lifecycle state moved, sodocs/BENCHMARKS.mdanddocs/STATUS.mdare not owed.scripts/agent-preflight.sh --staged: all gates green, real exit code 0. Checkers on141402e6c..HEAD, unpiped:check-commit-trailers0,check-commit-style0,check-doc-checkpoint0,check-agent-record0,check-symbol-anchors0,check-pr-size0.Refs #915, #979, #1354, #1365, #1386.
FOLLOWING_AGENTS_PROTOCOL
Following-Agents-Protocol: true
AI-Assisted: true
Assisted-by: AGENT:claude-opus-5 [Claude Code]