Repository navigation
Conversation
Accumulate every loop and stage boundary across logical suffix microbatches, including direct first-response readout gradients and Huginn latent identity. Retain full-gradient checks and negative CPU comparisons against packed replay. Signed-off-by: 0z5a <dezhen.lu@student.uni-tuebingen.de>
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.
Repeated prompt groups currently recompute the same actor prefix in every suffix microbatch. This adds a fixed-depth gradient reference that runs prefix forward once, accumulates every loop/layer KV adjoint and direct first-response readout adjoint, then runs prefix backward once before the optimizer step. Ouro, Nanbeige and same-latent Huginn preserve the complete shared-parameter gradient; Huginn keeps coda separate from recurrent feedback and rejects a different latent identity.
Incremental stack on #10 (
5f7ce7fa). This is an explicit serial-suffix reference API, not a default MCore/Ray schedule. The ordinary three-phase prefix technique is attributed to its existing work. Packed suffix execution, distinct-latent Huginn prelude sharing, joint rematerialization, distributed integration and target-GPU/full-RL validation remain pending.Validation: 402 CPU checks pass, six CUDA checks skip, and three known missing-Triton factory checks are deselected. Thirty-six added full-gradient/update configurations have maximum relative L2 error
1.819e-7; separate FP64 attention and all Q/K/V gradients agree within1e-12. Original overly strict FP64-weight failures and mixed-precision diagnostics are retained: native normalization still reduces in FP32.The result report includes all speed-comparison tables and raw data. All 648 same-tree and 108 untouched-parent observations match loss, full gradients and nonzero SGD updates. The serial-suffix reference is slower: clean-parent P24/D4/G32 ratios are 0.404× Ouro, 0.326× Nanbeige and 0.471× Huginn. The parent batches suffix projections; this reference currently does not. No GPU memory saving, end-to-end RL improvement or reward convergence is claimed. All 688 parent blobs and provider import paths are checked; full parent gradient/update oracle vectors are retained.