Repository navigation
Conversation
…ing TE opfuser (NVIDIA#6000) Signed-off-by: Zhongbo Zhu <42691305+zhongbozhu@users.noreply.github.com>
Signed-off-by: hongbinl <hongbinl@nvidia.com>
Signed-off-by: hongbinl <hongbinl@nvidia.com>
Signed-off-by: hongbinl <hongbinl@nvidia.com>
Signed-off-by: hongbinl <hongbinl@nvidia.com>
Signed-off-by: hongbinl <hongbinl@nvidia.com>
Signed-off-by: hongbinl <hongbinl@nvidia.com>
Signed-off-by: hongbinl <hongbinl@nvidia.com>
Signed-off-by: hongbinl <hongbinl@nvidia.com>
Signed-off-by: hongbinl <hongbinl@nvidia.com>
0da1b1b to
e569fa3
Compare
Signed-off-by: hongbinl <hongbinl@nvidia.com>
Signed-off-by: hongbinl <hongbinl@nvidia.com>
|
/claude strict-review |
Strict review summaryFindings: CRITICAL: 1, IMPORTANT: 1, SUGGESTION: 3 Scope reviewed: the paged-stash saved-tensor hook, the new Most impactful1. CRITICAL — the selective-recompute ownership fix does not fire ( 2. IMPORTANT — the packed-bias marking is dead under the config its own test uses ( Suggestions
One additional observation (no inline comment — outside the diff)
Risk assessmentMedium-high. Backward compatibility is clean: the new validation only tightens a combination that previously produced a silent no-op stash, no defaults or checkpoint keys move, and the op-fuser path is untouched. Performance is fine — the added work is Also worth noting for the record: per the PR description the end-to-end grouped-tensor case is dependency-gated in CI (the image predates TE #3224), and the 32-GPU ON/OFF parity run was performed on the #6828 stack rather than this head — so at merge time neither the new path nor the ownership fix has CI coverage on this branch. |
Signed-off-by: hongbinl <hongbinl@nvidia.com>
|
/ok to test 16c1156 |
Preserve zero-copy buffer forwarding and FSDP main_grad setup during the merge. Port marker/activation/GroupedTensor replay coverage into the existing dev determinism bucket and document the explicit SwiGLU flag. Signed-off-by: hongbinl <hongbinl@nvidia.com>
Summary
TEGroupedMLPGroupedTensor path.moe_use_grouped_tensor=Truewithout requiring the TE op fuser.CheckpointWithoutOutputstorage-level marker, which survives TE reshape/split views.Review follow-up
Commit
16c115625refreshes the branch onto currentdevand addresses the strict-review comments:is_checkpoint_without_output_tensor(), and add a reshape/split view regression test.config.moe_paged_stash, so selective-recomputedetach()does not silently disable it.Nonevalues when marking optional tensors.Mirror and dependencies
This is the
devmirror of #6828. The review follow-up above has now been ported to #6828, so the two PRs are synchronized at the feature and follow-up level, modulo branch-specificmain/devdifferences. Becausemaindid not yet contain the small storage-ownership feature from #7044, #6828 also directly subsumes that change and uses its storage-level predicate for the paged-stash ownership fix.#6847, the
devport of #6000, has merged. This branch has been refreshed onto the updateddevbranch and no longer carries a separate prerequisite delta.Transformer Engine dependencies:
GroupedTensorStorage.Validation
Current-head static validation:
CHECK_ONLY=true BASE_REF=dev bash tools/autoformat.sh: Black, isort, pylint, and ruff passed. The script’s non-blocking mypy step reports the local environment’s missing torch/Transformer Engine stubs plus existing baseline typing errors.python tools/check_copyright.py <changed Python files>passed.python -m py_compile <changed Python files>passed.Existing runtime evidence:
tests/unit_tests/transformer/moe/test_paged_stashing.pyexited 0. The CI image predates Transformer Engine ci(fix): Parse unit tests in merge-queue #3224, so the new grouped-tensor case was dependency-gated withInstalled TE GroupedLinear does not expose use_grouped_tensor.16c115625.