Repository navigation
Bump llama.cpp (hrx) 9dd1a1b72 -> 7a96fa179: the draft head's refined logits are no longer a stale coarse score - #2300
Conversation
…lishes its exact logits, not a stale coarse score (#2150) Carries 1bit-MONSTER/llama.cpp#330 (the refine kernel reads its exact logits back after a global barrier, plus the .repeat test arm) and #329 (tests only). docs/hrx.md: the #2150 paragraph says what it was and what fixed it. registry/architectures.json follows the pin. Fixes #2150 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
ready for review at bcb836b |
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
|
VERDICT: READY at The change
The check I ran, because a "+2 line" PR is not always a "+2 line" merge
Nothing reverted — so the extra files are base staleness, not the branch's doing, and the PR is exactly the pair of pin updates it claims. One ask: say in the body that the visible diff will be larger than the change ("the diff shows other PRs' landed work because the branch base predates them; the change is the gitlink and the registry line"). For a two-line pin bump that sentence saves a reviewer the same five minutes of suspicion I just spent, and it is the same courtesy #2241's per-commit table provides. |
Fixes #2150
What this does
Moves
third_party/llama.cpp(andregistry/architectures.json) from9dd1a1b72to7a96fa179on1bit/hrx-vulkan-patched:mul_mat_q6_kshortlist, refine kernel) handed each exact logit from the workitem that computed it to the workitem that publishes it through global memory, behind a barrier that fenced shared memory only. Now and then a slot was published before the store reached it and carried what was there before: the coarse scan's score for that candidate, x64. Now a global-memory barrier. Addsmul_mat.q6_k.token1_shortlist.repeat(200 recomputes in one process).docs/hrx.md: the #2150 sentence ("came back wrong once and did not recur") now says what it was, what fixed it, and the measurement.Before / after (strixhalo, gfx1151, 2026-11-12, one gpu-hold ticket per batch, before/after alternated)
The same test binary run against two libraries:
before= forkc762975a0(this pin's parent tree plus #329),after= the #330 headccb204c03, whose tree is identical to7a96fa179(git diff --stat ccb204c03 7a96fa179is empty).The wrong value is predicted, not just observed: a host re-implementation of the coarse score for that row gives 24.1202, and 64 x 24.1202 = 1543.69 against 1543.491 measured. The failures came in the busier batch (the two failing processes were the slow ones); the
afterprocesses ran interleaved with them and were clean.Full
test-hrx-opson the same two libraries: 217 passed / 53 failed on both, the same 53 by name. That build has the HIP add-on (gpu-kernels pinfd69590c) enabled, which takes dispatches the suite expects on Loom kernels (missing expected kernel: loom_libs:...); those 53 are that, not this change. The suite without the add-on was not run for this PR.🤖 Generated with Claude Code