Repin the Qwen3.8-Flash-Next MTP carry onto its fixed head - #220
Merged
Merged
Conversation
#144 is pinned at f40f64a, which aborts at load with GGML_ASSERT(ggml_can_repeat(b, a)) in build_hc_mix whenever the Qwen3.8-Flash-Next MTP head is attached. Every mix build since b10995-mix-3e83366 carries it. #219 is f40f64a plus one line, so this repin merges identically and needs nothing else changed.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
The branch gained a second commit: a borrowing draft head could not be measured by common/fit.cpp, so the fitter budgeted nothing for it and the recommended shared-* sidecar ran out of device memory on a 16 to 32 GB card. Both fixes ship together or the shared head stays unusable.
#219 merged into mtp/qwen4exp-nextn rather than master, so the carry PR now holds both fixes and the entry goes back to being a single #144 pin. Pinning the merged #219 instead would point the set at a closed PR for work that is already in the open one. ca14269 is a squash of the commits measured earlier and produces a byte-identical tree, so those numbers carry over unchanged.
5 tasks
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.
scripts/unsloth/pr-set.jsonpins the Qwen3.8-Flash-Next MTP carry (#144) atf40f64a81. That commit aborts at load whenever the MTP head is attached:This moves the pin forward to
ca1426903, #144's current head, which now carries two fixes that landed on its branch through #219.Why it broke
ggml-org#28896 (
41abbfd599, 2026-09-14) moved the qwen4exp hyper-connection gammas to{ n_embd, hc }withTENSOR_ALLOW_RESHAPE. Upstream did nothing wrong: it changed code it owns. The MTP head's gamma is fork-only, lives 110 lines further down in the same file, and did not conflict, so the rebase inf40f64a81("Fix merge conflicts") converted the three trunk gammas and leftlayer.nextn.hc_head_normat{ hc_dim }.git blame src/models/qwen4exp.cppon the old head:build_hc_mixthen multiplies a[2560, 4, n_tokens]stream by a[10240]weight. Nothing about the published GGUFs changed; only the expected shape moved.The second fix addresses a standing bug rather than this regression.
common/fit.cppopens the draft model on its own to price it, and a borrowingshared-head has notoken_embd.weight, soborrow_shared_tensorthrew, the fit warnedfitting without itand budgeted nothing for the draft, and the real load ran out of device memory by roughly the head's size.Measured
Built from this repo with identical flags (
-DGGML_CUDA=ON -DCMAKE_CUDA_ARCHITECTURES=100, Release), B200 held at 30.7 GiB free so the load matches a 32 GB consumer card. Targetunsloth/Qwen3.8-Flash-Next-GGUFUD-Q4_K_XL,--fit on --flash-attn on -c 8192 --spec-type draft-mtp --spec-draft-n-max 2, 512-token prompt, 128 generated, median of 5 samples after a warmup.Q8_0headshared-Q8_0headf40f64a81(current pin)ca1426903(this pin)ca1426903is a squash of the commits measured above and produces a byte-identical tree, so those numbers carry over unchanged.Against the published prebuilts on the same harness and card, without a drafter:
b10909-mix-bea84f7(pina9e9c3c)b10995-mix-3e83366b11007-mix-3e83366b11027-mix-3e83366So
b10995-mix-3e83366(2026-09-16) is the first affected build, the fix restores decode to the pre-break figure, and losing the drafter costs 28 percent. Without a drafter the newer builds are faster thanb10909, by 4.4 percent offloaded and 8.4 percent fully resident, so nothing else regressed.Reported in unslothai/unsloth#11143, unslothai/unsloth#11219 and unslothai/unsloth#11221.