Repository navigation
third_party: bump llama.cpp to ced49c61 — the HRX backend-ops suite is green, with named waivers (closes #1259) - #1260
Merged
Conversation
…is green, with named waivers (engine #1259)
|
Preparing review... |
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.
Bumps
third_party/llama.cpp710c7c23->ced49c61(fork PR 1bit-MONSTER/llama.cpp#221) — the HRX backend-ops suite is green at the tip, and the failures it had were named, not hidden.Before / after
710c7c23, two runs): 4268/4592 passed, the same 324 failing names both times (the issue's pincffae5c4was 4050/4374 with the same 324; the suite has since grown by 218 tests).Backend HRX0: OKon two of three full runs. The third was 4591/4592 with one intermittentMUL_MAT(f32, m=1, n=1, k=2048, per=[0,1,2,3], o=1)(ERR 1.19e-2) that passes 5/5 when filtered — reported as a flake, not waived.The 324, attributed
selected_experts— an internal non-contiguous VIEW of the ARGSORT output; HRX reads back garbage ints where CPU has the ids. Comparing the routed weights (the op result) passes at every shape/gating flag; real graphs consume the ids insideGET_ROWSon device. Now an explicit per-backendWAIVER [HRX0] TOPK_MOE: …line (printed once, with the reason); other backends still compare the ids and every backend compares the weights.qwen3_moe_router_top8_f32assumesexperts_per_lane0in [1,16] but computesexpert_count / wave_size(64), so 32 gives 0. The matcher now refuses <64 experts and any count that is not a multiple of the 64-lane wave (this also caught a 288-expert shape whose fused weights were off by 1e-6); small test graphs run the standalone dispatches and pass.identity=0):hip.hc_postis a private HIP add-on dispatch, not in this fork;identity=1passes both shapes. Explicit named waiver.Waivers are the only skips, each printed with its reason — nothing is silently skipped. Remaining follow-ups (tracked on engine#1259, not blocking): the add-on's
identity=0path (gpu-kernels repo) and optionally materialising non-contiguous view outputs on HRX, which would remove the TOPK_MOE waiver.Merge gate
Required context is
build; the suite evidence above is from the HRX build on strixhalo and is recorded on engine#1259.registry/architectures.jsonregenerated (sources: ced49c61, 298/298) andtools/check_pins.pyreports710c7c23c -> ced49c61b is ahead. Upstream pin move with measured behaviour; no RFC-relevant surface.