Skip to content

Bump HRX: llama.cpp d8bd0ff6052a (#171, #172, #173) + held hrx-system 82804197bcbe - #810

Merged
bong-water-water-bong merged 1 commit into
mainfrom
bump-hrx/d8bd0ff6052a-82804197bcbe
Nov 2, 2026
Merged

bong-water-water-bong merged 1 commit into
mainfrom
bump-hrx/d8bd0ff6052a-82804197bcbe

Conversation

@bong-water-water-bong

Copy link
Copy Markdown
Collaborator

Carries the fork's current tip — three commits past the pin main holds today (1d32c22609d6, #170), in one PR as asked: #171, #172, #173.

Pre-checked on the new tip: the GGML_HRX_HIP_ADDON_DIR hook is present (6 refs), tests/test-backend-ops.cpp still carries the zero-cases guard, tools/mtmd/models/models.h exists.

Why the gate matters more than usual for this one: #171 changes mappings (a guard page after an imported KV-share region) and #172/#173 change when the engine refuses to run — residency budget versus working set. Both are visible to the hardware gate rather than only to unit tests, so the hw_gate on this branch (triggered by the bump-hrx/* name) is the acceptance: build → 1959/1959 ops → fa-decode 6/6 → kat ×7 → needle ×3 → placement ×7 → kld ×5. The five KLD bases are in the gate store and verified against manifest.json; this bump does not touch them.

Diff vs main is two files (pin + registry) — the gate-hygiene commit from #786 is in main now, so a bump no longer needs to carry it.

Opened, not merged: it lands on the per-bump word.

… 82804197bcbe

The fork line moved three commits past the pin main carries today (1d32c22609d6, #170):

  d8bd0ff  hrx: refuse to run when the residency budget is below the working set (engine #788) (#173)
  ba4fdf0  hrx: make the host-weight residency budget mean the budget (engine #788) (#172)
  197e775  kv share: an optional guard page after an imported region, so a tile that writes past it faults
           instead of corrupting (#171)

So the first two are the residency budget actually binding (and now refusing rather than over-committing), and the
third gives an imported KV-share region a guard page - a mapping change, which is exactly the kind of thing the
hardware gate below is for.

- third_party/llama.cpp: 1d32c22609d6 -> d8bd0ff6052a
- hrx-system: unchanged at the held 82804197bcbe (config/hrx-system-hold.config); the hold is not lifted here
- registry/architectures.json: regenerated against the new gitlink (tools/registry_build.py reads HEAD, so this runs
  after the gitlink commit): 294 hrx / 7 npu, 0 architectures added or removed - the change is the recorded source
  pin only; --check-pins says "records the committed pins"

Checked on the new tip before cutting: the GGML_HRX_HIP_ADDON_DIR hook is present (6 refs), tests/test-backend-ops.cpp
still carries the zero-cases guard the gate row recognises, and tools/mtmd/models/models.h exists.
@github-actions

github-actions Bot commented Nov 2, 2026

Copy link
Copy Markdown

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

🎫 Ticket compliance analysis 🔶

170 - Partially compliant

Compliant requirements:

Non-compliant requirements:

  • Documentation in docs/hrx.md was not included in this PR

Requires further human verification:

  • Verification that the fix for HSA_STATUS_ERROR_MEMORY_FAULT is correctly applied and tested on hardware

171 - Partially compliant

Compliant requirements:

  • Updated census figures in registry/architectures.json

Non-compliant requirements:

  • README, PORTING, and docs/registry.md were not updated with the new census figures

Requires further human verification:

  • Confirmation that the census data is correctly reflected in all relevant documentation

172 - Partially compliant

Compliant requirements:

  • Updated census figures in registry/architectures.json

Non-compliant requirements:

  • README, PORTING, and docs/registry.md were not updated with the new census figures

Requires further human verification:

  • Confirmation that the census data is correctly reflected in all relevant documentation
⏱️ Estimated effort to review: 3 🔵🔵🔵⚪⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review

Subproject Commit Update

The PR updates the third_party/llama.cpp subproject to a new commit hash. While this is necessary for incorporating the upstream fixes, it's important to verify that the new commit does not introduce any regressions or unexpected behavior in the HRX backend, especially in relation to memory management and MoE router functionality.

Subproject commit d8bd0ff6052a3cc15b5f83d8d0625aac5b644404
Architecture Registry Update

The registry file has been updated to reflect the new commit hash for llama.cpp (hrx). This change is necessary to ensure that the correct version of the library is being used. However, it's important to confirm that this update aligns with the intended behavior and does not inadvertently affect other parts of the system.

"llama.cpp (hrx)": "d8bd0ff6052a3cc15b5f83d8d0625aac5b644404"

@bong-water-water-bong

Copy link
Copy Markdown
Collaborator Author

hw_gate is GREEN — run 41420550390, ## HRX hardware gate: PASS, 1065 s, 0 amdgpu ring timeouts, Tctl 73 °C at end, on the PR's merge commit 7e6929e (llama.cpp d8bd0ff6052a, hrx-system 82804197bcbe).

row result
build PASS 5m18s (CI)
ops PASS — 1959/1959
fa-decode-q8 PASS 6/6
kat × 7 PASS (9 cases each; 3 and 5 warnings on the two 0.6b runs are the documented ones)
needle × 3 PASS (7341 at 7082 and 7403 tokens)
placement × 7 PASS (all on HRX, largest graph 6449 nodes)
kld × 5 PASS — 0.6b mean 0.000001 / p99 0.00004 / top 100.00%; zaya1-8b, 27b, coder-30b-a3b, 4b-iq4xs −0.000000 / p99 ≤0.00004 / 100.00%

Everything else on the PR is green too — build, CodeQL ×4, both pin guards, and pr_agent passes this time (34 s).

Two things worth noting about this bump specifically, since they are what the gate was for:

  • weekly: 1bit OS image builds under cron; the guard reports real failures #173's residency refusal never fired — all seven models loaded and served, so on this box the budget covers each model's working set at the gate's context sizes; the refusal is a floor that these runs stay above, not something that trips in normal service.
  • Census 2026-09-27 #171's guard page did not disturb mapping or placement: every placement row is all-on-HRX and no ring timeouts appeared, so the extra page after an imported KV-share region is benign for the paths the gate exercises.

Ready for the per-bump word. Nothing of mine is running; the KLD store was untouched throughout.

@bong-water-water-bong bong-water-water-bong left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

VERDICT: READY

At c3c50039 exactly, and its own gate ran on this pin — that is the part worth checking, since a PASS does not transfer
across a re-cut:

hw-gate check at 7e6929e: llama.cpp d8bd0ff6052a, hrx-system 82804197bcbe
## HRX hardware gate: PASS
| build | PASS |  7 s |  | ops | PASS | 124 s | 1959/1959 (MUL_MAT, MUL_MAT_ID, FLASH_ATTN_EXT, GATED_DELTA_NET,
  SSM_CONV, GET_ROWS, ROPE, RMS_NORM, SOFT_MAX) | fa-decode-q8 | PASS | 6/6 |
| kld ×5 | PASS | mean KLD ≤ 0.000001, p99 ≤ 0.00004, same top 100.00% |

So the gate tested d8bd0ff6052a, not the pin it replaces. Content is the two lines it should be: third_party/llama.cpp
1d32c22609d6 → d8bd0ff6052a and registry/architectures.json's llama.cpp (hrx) updated to the same sha — I checked the
two values are equal and that the diff contains nothing else, so hrx-system is untouched (82804197bcbe, the hold file's
value) and no source file rides along.

The pin is the fork tip: d8bd0ff605 = #173 (refuse to run when the residency budget is below the working set) on top of #172
(the capacity-as-budget and ref-shift fixes) on top of #171 (the KV-share guard page) on the TOP_K work — so this bump brings the
whole engine-#788 mitigation set, which is the reason it matters.

I did not update-branch it, as instructed. tprs-ready applied; this is the head to merge on.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Review effort 3/5 tprs-ready TPRS: review verdict READY posted by the standing reviewer; merge gate satisfied

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant