Repository navigation
update(ssm): add BF16 timestep precision regression coverage - #2209
Merged
Merged
Conversation
Current main independently carries the float32 timestep promotion from PR lablup#2270. Resolve the overlapping wrapper change to the mainline form while retaining PR lablup#2209's focused mixed-dtype regression coverage. Refs lablup#2142
Keep the focused mixed-bias precision regression in a child module so the parity suite remains below the 500-line file limit. The six CUDA cases and their tolerances are unchanged, and the focused test target compiles with the CUDA feature. Refs lablup#2142
Record the independent float32 timestep oracle and the completed GB10 CUDA workspace, focused parity, contract, and Clippy checks in English and Korean reports. Distinguish the regression coverage from the production correction already merged in PR lablup#2270.
Include the shared CI dependency fix from main so the BF16 timestep regression coverage passes cargo-deny without suppressing advisories. The SSM test implementation is unchanged. Refs lablup#2142, lablup#2278.
inureyes
added a commit
that referenced
this pull request
Oct 12, 2026
Merge origin/main at 2cb4e20 after the portable A/B output directory fix landed. This incorporates the #2209 and #2276 prerequisite changes while leaving the split-MTP implementation and regression-test paths unchanged. Validation: - configured repository contracts - cargo deny check - cargo fmt --all -- --check - staged and unstaged whitespace checks
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.
Current
maincontains the production correction through PR #2270: the shared compiled SSM preprocessing casts bothdtanddt_biasto float32 before addition. This PR preserves the contributor's original diagnosis and commit history while adding the isolated regression coverage that remains absent frommain.Root cause and coverage
compute_dt_compiled, before backend dispatch, rather than in the CUDA recurrence body or the float32 reference. MLX selected BF16 forfloat32 + bfloat16, so the processed timestep was rounded before the float32 state update.x = B = 1,C = D = 0, and exactly representable inputs, making every next-state element equal host-f32softplus(-2.5)without depending on a second GPU oracle.Validation
a9696bd8cb3d0550d312ce5b9c561c544f9886e4: passed.gpu-lock: 6 passed, 0 failed, 0 ignored; all six SSM parity cases executed in 9.65 seconds.gpu-lock: 12,247 passed, 0 failed, and 389 ignored across 163 suites, including doc tests.-D warnings: passed.PR #2270's preserved GB10 evidence reduced Granite state normalized RMS/max from
2.532402801e-3 / 4.127457397e-2to2.838613609e-8 / 1.701009653e-6without changing tolerances, and its deterministic Granite fused-kernel versus graph comparison matched all 64 generated token IDs. This final PR does not claim a second production correction.Bilingual technical reports are included under
TECHNICAL_REPORTS/.Closes #2142