align speculative Mamba state with sequential decode - #651
Open
McZyWu wants to merge 2 commits into
Open
Conversation
Contributor
|
Caution The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased. |
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.
Summary
Align the NPU speculative Mamba state update path with sequential single-token decode.
This change fixes numerical inconsistencies in the recurrent gated delta rule and causal Conv1D kernels when multiple MTP tokens are verified in one invocation.
Problem
MTP target verification processes multiple draft tokens in a single kernel invocation, while normal decode processes one token per invocation.
The two paths previously crossed different state persistence boundaries:
As a result, processing the same token sequence with MTP and sequential decode could produce different intermediate states. The differences accumulated across decode steps and could affect subsequent token selection.
Changes
Recurrent gated delta rule
Causal Conv1D
Validation
Added focused BF16 consistency tests:
rtol=0andatol=0.rtol=0andatol=0.Both kernel paths now produce exactly matching outputs and states for the covered cases.
Scope
This change guarantees consistency between speculative multi-token execution and sequential execution of the same NPU kernels.
It does not claim full-model bitwise equivalence between MTP-enabled and non-MTP inference. Other model layers, different recurrent kernel implementations, and the
M=4versusM=1execution shapes may still introduce numerical differences.