Skip to content

docs: keep 903 after upstream merged #29941 instead of #27044 - #447

Closed
glennneuber wants to merge 1 commit into
mainfrom
docs/903-kept-after-29941
Closed

glennneuber wants to merge 1 commit into
mainfrom
docs/903-kept-after-29941

Conversation

@glennneuber

Copy link
Copy Markdown

Summary

Upstream merged llama.cpp#29941 on 2026-10-04 as dd266785c and closed our #27044 in its favour. The maintainer decided the same day to keep compat 903. This PR records that decision and the re-cut it implies. It changes no code.

  • What upstream merged: the one-line ne11 → ne12, the same line docs(upstream): llama.cpp#27044 was reviewed; test the maintainer's variant on sm_120 #445 measured on sm_120. Between 05043961, where docs(upstream): llama.cpp#27044 was reviewed; test the maintainer's variant on sm_120 #445 measured, and dd266785c, it is the only change to ggml-cuda's mmq, mmvq, mmid and common files.
  • Why 903 stays:
    • From 128 tokens up, both lines pad 128 blocks, so every reported crash is fixed upstream.
    • Below 128 tokens, ne12 can leave the last tile up to 63 blocks short. The CPU check finds 268,440 of 2,439,360 shapes short, and memcheck with the exact allocation shows errors at 65 and 100 tokens on sm_120.
    • The stock pool hid that read in every case measured.
  • What it means at the next pin: nothing changes at b11081, and v0.35.1's b11232 also predates dd266785c. At the first pin that contains it, 903's context line reads ne12, so 903 is re-cut as ne12 → ne12*n_expert_used.

Changes

  • docs/maxusai/retirement-register.md: the 903 row. #27044 is closed, and the row records what now retires 903, which test gates its deletion (tasks/mmq-ids-padding-gpu.sh on the new pin, plus the CPU check), and the decision.
  • llama/compat/README.md: the 903 entry gains the outcome and the re-cut. "Up to a 512-row tile" is corrected to at most 128 rows, since no MMQ config is wider. The 512 was get_J_max's cap, as docs(upstream): llama.cpp#27044 was reviewed; test the maintainer's variant on sm_120 #445's review found.
  • README.md: the MoE + MMQ row and the "filed and pending" paragraph. The links now point at the PR, not the issue path.
  • docs/maxusai/upstream-mmq-submission-material.md: a new "Outcome (2026-10-04)" section, and the open items updated.

Nothing was posted upstream. A follow-up there on the residual would have to be written by hand.

Test plan

  • check_source_paths.py --changed-since origin/main: every referenced file resolves.
  • Name scan of the diff: clean.

ai-server/mlx-cuda

🤖 Generated with Claude Code

Upstream merged llama.cpp#29941 (dd266785c, 2026-10-04), which pads the MMQ
ids path by ne12, and closed #27044 in its favour. That covers every
reported crash, all at 128 tokens or more, where both lines pad 128
blocks. Below 128 tokens it can still leave the last tile up to 63 blocks
short (the sm_120 results in #445).

The maintainer decided to keep 903. This records the decision and the
re-cut it implies in the retirement register, the compat README, the
README and the submission material. At the first pin that contains
dd266785c, 903's context line reads ne12, so the patch becomes
ne12 -> ne12*n_expert_used. It also corrects "a 512-row tile" to at most
128 rows: no MMQ config is wider.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@glennneuber

Copy link
Copy Markdown
Author

Closing: superseded by #448 and #462. This PR records the 2026-10-04 plan, which kept 903 and re-cut it as ne12 → ne12*n_expert_used. Main has moved past that plan twice.

Nothing in it is missing from main. If you see something I missed, reopen it.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant