Skip to content

pr-set : repin DiffusionGemma, Inkling, #241 and #251 for upstream b11946 - #334

Merged
oobabooga merged 2 commits into
masterfrom
pinset-repin4
Oct 28, 2026
Merged

oobabooga merged 2 commits into
masterfrom
pinset-repin4

Conversation

@danielhanchen

Copy link
Copy Markdown
Member

Repin four pins in scripts/unsloth/pr-set.json that no longer merge on the bases the nightly picks now (aged base b11946 today, newest tag b11954). Each pin branch got Fix merge conflicts merges of upstream release tags (b11935, the aged base when this started; Inkling also b11938; DiffusionGemma also b11946), keeping the upstream code as is and re-applying only the pin's own change. All four pushes are fast-forwards of the existing PR branches.

Stacked on #333 (the DeepSeek-V4.1 pin swap #298 -> #332); merge #333 first.

pin upstream PR that broke it change new SHA
ggml-org#24423 (DiffusionGemma) ggml-org#30880 (saver arch list moved to llama_arch_supports_save in src/llama-arch.cpp), then ggml-org#31275 (b11946, encode() in src/llama-context.cpp) LLM_ARCH_DIFFUSION_GEMMA added to the upstream list; in encode() the upstream code is taken as is, since ggml-org#31275 already makes a decoder without memory output only its marked tokens, which is what the pin's change there did 2e715c063
ggml-org#25731 (Inkling) ggml-org#30880, then ggml-org#31252 (LFM3 added next to Inkling) LLM_ARCH_INKLING added to the upstream list; LFM3 and Inkling entries kept side by side 3582c5ee0
#241 ggml-org#31141 (no_alloc moved into the KV cache constructor, n_pad dropped) indexer cache keeps its type_idx with the new constructor arguments 82b228db0
#251 ggml-org#21231 (fit call moved into common_fit_apply, logger scope helper) moe_cache_auto passed through common_fit_apply; the chosen cache size is stored back into params after the fit, as before 44e810753

Both ggml-org branches also merge cleanly with ggml-org master again (ggml-org#25731 showed as conflicting before this).

Simulated merge loop with these four, the DeepSeek-V4.1 pin #332 from #333, and the Metal NVFP4 pin #330 from #331:

tag merge pin_contract merge_checks
b11946 (aged) 25 pins, clean all intact clean
b11951 25 pins, clean all intact clean
b11953 25 pins, clean all intact clean
b11954 (newest) 25 pins, clean all intact clean

The pin-set dry-run check on #331 and #333 fails on the current master set (the four pins above refuse, and #298 refuses since upstream took DeepSeek-V4.1); with this PR and #333 merged, #331 should go green after an update from master.

Merged tree (same set), CUDA sm_100 on B200:

tag CUDA build test-chat MUL_MAT MUL_MAT_ID PAD GET_ROWS feature_matrix GPU
b11946 (aged) ok all passed 2627/2627 1027/1027 37/37 349/349 all 16 features
b11953 (newest) ok all passed 2627/2627 1027/1027 37/37 349/349 all 16 features

CPU gate and CPU feature matrix pass on both tags.

Numeric gates on the two model pins:

model arms result cause of the difference vs the old head
DiffusionGemma Q4_K_M, -s 42 -n 256, each arm twice old head dd7f73b19, previous repin 15ce29a4a, new head 2e715c063, new head + ggml-org master old head output unchanged run to run; previous repin, new head and new head + master all byte-identical to each other ggml-org#29720 (b11691): the old head merged with that commit alone reproduces the new output byte for byte; the commit before it gives the old output
Inkling UD-IQ1_S, wikitext-2 -c 512 --chunks 20 old head 48ad1d844 vs new head 3582c5ee0; new head vs new head + ggml-org master old head PPL 40.0274 (old head again: KLD 0, top-1 100%), new head PPL 39.4079, KLD 0.2352, top-1 82.67%; new head + ggml-org master (today) vs new head: PPL 39.407860 both, KLD 0, top-1 100% ggml-org#29948 (b11879): the old head merged with the commit before it gives KLD 0, with it exactly the new head's KLD 0.2352

Both differences come from upstream CUDA changes that every current base already has (the fused gate/up MMQ path, and rms_norm float4 variants), not from these merges. Against a CPU reference on 4 chunks the Inkling old head and new head are equally far (KLD 0.236 and 0.240, top-1 80.7% and 82.7%), so the change moves the numbers without making them worse. The second DiffusionGemma merge (b11946, encode()) changes nothing: its output is byte-identical to the previous repin.

Not covered here: ROCm, Vulkan, macOS, Windows and ARM legs (nightly only).

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 28, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review 🔄 Running since 2026-10-28T12:02:40.768910Z 5db3edf PR opened
🔒 Security Review ✅ Completed 2026-10-28T12:08:13.176815Z 5db3edf PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@oobabooga
oobabooga changed the base branch from pinset-dsv41-332 to master October 28, 2026 14:31
@oobabooga
oobabooga merged commit 4cc0ed2 into master Oct 28, 2026
5 of 6 checks passed
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.

2 participants