Repository navigation
fix: bound context-parallel admission and memory accounting - #1138
Merged
Merged
Conversation
(cherry picked from commit ed3dbb78c2dae42b992fee11e910a6a62bc6293d) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
(cherry picked from commit 8343c73a83010b4317a11522d5c15afd5fc02ff1) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The bounded-profile CP2/4/8 scope conflicted with the MoE-only scope picked just before it. Keep this general condition, as lc-qual's b31af924 integration did: the signature's trailing clause still requires MoE memory support for MoE models and an adapted FC1 for dense ones. (cherry picked from commit bfedd0be47931e8d19ba2bb01bb67eef91077995) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
(cherry picked from commit faae9cfed73ebdecf89566b41a3215ae50f5ad44) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Add opt-in synchronous saved-boundary offload with a fixed declared host budget and separate admission signature. Keep one device boundary, recompute workspace, all pending adapter gradients and complete outputs priced; reject host over-budget plans before forward. Defaults and GPU safety budgets remain unchanged. (cherry picked from commit 67170e6080609e071b5a0261e93c0f10880e210e) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
(cherry picked from commit 0b4b671388d4210acec782b5e63d61888ce2a387) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Record origin/main's CP1 cold and calibrated requirements, checkpoint floors and input-gradient terms for dense and MoE roots, with and without the bounded direct-forward scope, so the CP2/4/8 calibration cannot move them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The new offload tests import art.megatron.lora and the Megatron-backed rank fixtures, so collect them with the Megatron runtime instead of the backend unit environment, like the other checkpoint memory tests. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Revert 69d03c7 (upstream 0b4b6713) before removing its host offload dependency. The feature needs collective budget semantics in a separate follow-up. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Revert 82284f4 (upstream 67170e60). Cumulative pack-time host usage can fail after preflight on only one rank during repeated forwards. Remove its CI-only test wiring and document the CPU/Gloo repro and required follow-up. CPU checkpoint and gradient tests: 92 passed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Record selected adapter layouts for native dense CP, including attention-only TP1 models. Charge the most-adapted recomputed layer at the largest selected rank for saved factor products plus backward workspace. Freeze runtime parallel shape and observed MoE layers for CPU replay, and refuse older CP reports without those facts. CPU validation: 370 passed / 14 skipped across targeted accounting, CP1 pinning, loaded-rank admission and CP2/4/8 replay. All five measured rank-8 lifecycle cells remain within their recorded budgets and above allocated peaks. Ruff/format/lock pass; ty has the same 18 diagnostics as base main, with zero in touched production/replay files. The complete Megatron list needs a clean committed tree for acceptance fixtures; rerun follows. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Scalar and historical estimators can declare LoRA targets without supplying selected ranks. Keep the old boundary-gradient allowance beside explicit workspace in that case instead of interpreting absent ranks as zero. Complete rank metadata still uses the derived saved-product and backward-workspace charge. Extend the high-rank regression to the literal metadata-omitting probe. CPU checkpoint/forward-profile tests: 150 passed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Read LoRA subclasses, classify native selected-factor inventories, and retain the per-layer allowance for unknown owners or geometry. Cover the GLM rank-512 escape and inherited/foreign adapter regressions. Move the host-offload handoff outside the repository. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Agent: Shazeer
Problem. ART's admission control refused context-parallel work that fits. Before this change, CP8 refused even a 32K forward, predicting 128.6 GiB of extra memory against 61.3 GiB available. The CP>1 profile extrapolated fixed small-root scratch as if it scaled per token. The long-context lanes also found a planner-replay crash at CP>1.
What this changes.
Validation.
60b9de6d, is CLEAR-WITH-NOTES.Limits.
TypeErroralready exists on main at CP1.🤖 Generated with Claude Code