chore: nightly sync main into dev (13_07_2026) - #5784
Merged
Conversation
Signed-off-by: ykarnati <ykarnati@nvidia.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Philip Petrakian <ppetrakian@nvidia.com>
Signed-off-by: wdykas <wdykas@nvidia.com>
Signed-off-by: ykarnati <ykarnati@nvidia.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Keshav Santhanam <ksanthanam@nvidia.com>
Signed-off-by: ykarnati <ykarnati@nvidia.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: Laura Dang <laurad@nvidia.com>
Signed-off-by: oliver könig <okoenig@nvidia.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: Deepak Narayanan <dnarayanan@nvidia.com> Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: oliver könig <okoenig@nvidia.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: Teodor-Dumitru Ene <teodord.ene@gmail.com>
Signed-off-by: shanmugamr1992 <shanmugamr1992@gmail.com> Signed-off-by: Shanmugam Ramasamy <111910568+shanmugamr1992@users.noreply.github.com> Co-authored-by: shanmugamr1992 <shanmugamr1992@gmail.com> Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Shanmugam Ramasamy <111910568+shanmugamr1992@users.noreply.github.com>
Signed-off-by: ykarnati <ykarnati@nvidia.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Charlie Truong <chtruong@nvidia.com>
Signed-off-by: Jingyue Wu <wujingyue@gmail.com>
Signed-off-by: Philip Petrakian <ppetrakian@nvidia.com>
Signed-off-by: Jingyue Wu <wujingyue@gmail.com>
…and remove legacy modelbuilder functions (#5169) Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Signed-off-by: oliver könig <okoenig@nvidia.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: oliver könig <okoenig@nvidia.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: Hollow Man <hollowman@opensuse.org>
Signed-off-by: oliver könig <okoenig@nvidia.com>
Signed-off-by: yanghao.666 <yanghao.666@jd.com>
Signed-off-by: Philip Petrakian <ppetrakian@nvidia.com>
…ls) (#5469) Signed-off-by: ilml <tolong@nvidia.com>
Signed-off-by: ykarnati <ykarnati@nvidia.com>
Signed-off-by: Philip Petrakian <ppetrakian@nvidia.com>
Member
|
/ok to test e348ed1 |
Signed-off-by: svcnvidia-nemo-ci <svcnvidia-nemo-ci@nvidia.com>
Member
|
/ok to test dc693da |
Signed-off-by: svcnvidia-nemo-ci <svcnvidia-nemo-ci@nvidia.com>
Member
|
/ok to test 015de62 |
Phlip79
approved these changes
Jul 16, 2026
Contributor
Author
|
Superseded by today's nightly sync. |
Contributor
|
/ok to test 48ca9de |
# Conflicts: # megatron/training/arguments.py # pretrain_hybrid.py # tests/unit_tests/data/test_get_batch.py
Contributor
|
/ok to test 775f4e3 |
FDecaYed
approved these changes
Jul 17, 2026
FDecaYed
left a comment
Contributor
There was a problem hiding this comment.
added minor TP fused MLA fix and ncclEP flag change. Also resolved merge conflicts with latest dev.
Contributor
|
/ok to test 1de26bc |
Contributor
|
/ok to test a77ba35 |
Signed-off-by: Philip Petrakian <ppetrakian@nvidia.com>
Member
|
/ok to test 63754d9 |
Contributor
Author
|
Superseded by today's nightly sync. |
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
Nightly sync of
mainintodevfor 13_07_2026. Merges 116 commits frommainintodev.Python lines: +36836 / -4228 across 278 files (includes main's 116 commits; conflict-resolution surface is far smaller — see remerge-diff below).
91 files had merge conflicts, all resolved surgically per the nightly-sync skill (preserve dev-only additions; take main only for the sanctioned override list or where main's refactor is authoritative).
Key resolution decisions
Dependency triple & environment (kept dev's):
pyproject.toml,uv.lock,docker/Dockerfile.ci.dev— kept dev's verbatim (verified identical toorigin/dev).docker/.ngc_version.dev+.gitlab/stages/01.build.yml— kept dev's 26.04 base image. Main bumped to 26.06 via Update base image to nvcr.io/nvidia/pytorch:26.06-py3 #5632, a dedicated base-image-bump PR that bundled regenerated golden values + GitLab pin. Base-image bumps belong in their own PR (cf dev's own chore: Update Docker image version to 26.04-py3 on dev #5051), not the nightly sync, and cannot be validated here (no GPU / uv.lock regen). Golden values (19 JSONs) kept as dev's for the same reason..github/CODEOWNERS— dev's verbatim (never modified; verified empty diff)..github/copy-pr-bot.yaml— union of trustee lists (kept dev-onlysanandaraj5597,wplf; added main's new trustees).API-mismatch fixes (main callers → dev's renamed APIs):
args.hybrid_context_parallel→args.dynamic_context_parallel(training.py, pretrain_hybrid_flex.py) — the deprecatedhybridarg does not exist in the merged argparse.get_hybrid_data_context_parallel_groups→get_dynamic_data_context_parallel_groups(training.py import + call site) — only thedynamicvariant exists in mergedparallel_state.Major subsystem merges:
MLASelfAttention+DSAttentionstack after CI exposed an incompatible mix of main's absorbed/fused DSA path and dev's callers. Main-only fused-backend modules, tests, config fields, and dependency helpers were removed together; dev's separateapply_dsa_kernel_fusionpath remains. Porting main's [2/2] Wiring cuDNN fused DSA kernels support with THD, CP and IndexShare (GLM5.2) #5099/[split 4/4] Enable DSA CP and THD hooks #5246 backend onto dev's DeepSeek-v4 architecture is deferred to a dedicated follow-up.transformer_config.py,token_dispatcher.py): unioned backendLiteral(deepep/deepepv2/hybridep/ncclep); kept both_DeepepV2Manager(dev) and_NCCLEPManager(main); took main's unifiedmoe_flex_dispatcher_num_sms(with deprecatedmoe_deepep_num_smsrouted); preserved dev's DSv4/CSA__post_init__validation andfine_grained_offloading_max_inflight_offloads._forward_mlp_output_with_bias/input_idsrouter plumbing and main's inter-document-masking MoE reshape (_maybe_unflatten_for_moe/_maybe_reflatten_from_moe).get_batch:pretrain_gpt.pykept dev's implementation (matches the mergedtraining.utilshelper world) + grafted main's cached-logits KDloss_funcbranch.pretrain_hybrid.py/pretrain_hybrid_flex.pyuse main's core.utils helper signatures with dev'sdynamicCP-group naming._decoder_hidden_states_cachepath (consumed bytext_generation_controller); dropped main's block-scopeinference_context.mtp_decoder_hidden_statesapproach (its infra is not present in the merged tree). Dropped main'sTestMTPBlockScopeCudaGraphtests accordingly.Files taken wholly or primarily from main (their refactors are authoritative):
megatron/training/training.py(main overall, with dev's final DSv4/MLA FLOPs estimator region restored after CI),megatron/training/checkpointing.py(process-group threading — callers already passdp_group/dp_cp_group/rng_state_key_prefix),.github/scripts/oncall_manager.py,.github/scripts/sync_team_usergroups.py(Slack helpers extracted togithub_slack_utils),examples/post_training/modelopt/finetune.py,tools/trigger_internal_ci.py,megatron/inference/utils.py,megatron/core/pipeline_parallel/fine_grained_activation_offload.py(main'sgroup_offload/should_bulk_offload(group)interface — the merged common regions already require it).mFSDP test reorg: main renamed
tests/.../megatron_fsdp/→mfsdp_v1/+mfsdp_v2/(#5640). Dev's newtest_mfsdp_param_and_grad_buffer.py(dev-only #5013) preserved undermfsdp_v1/.Intentional main-side removal (documented per skill case (a)):
_forward_mlp_postprocess's redundant_restore_token_dispatcher_attrs()-at-top was removed by main commit5e4fe9b3c("Optimize memory usage of partial CUDA graphs"), replaced by its weakref tail.Verification performed
.pyfiles compile (py_compile).black==24.4.2(--skip-magic-trailing-comma --skip-string-normalization, line-length 100) +isort==5.13.2(pyproject config) pass cleanly on the 323-file set CI lints (megatron/core+tests/changed vs main). Note: main'straining.py/checkpointing.pywere not black-v24-clean; dev's standard is, so resolved files were reformatted to dev's standard (what CI enforces).origin/dev.a58373f33(Add RL rollout submission and consumption granularity controls #5306).remerge-diff file summary (conflict resolutions only, 91 files)
🤖 Generated with Claude Code
Latest CI follow-up
Workflow 29349138534 confirmed the broad transformer, RL, SSM, all-unit, MBridge, and broad MoE suites pass on the rolling fix. Its dedicated MTP failure was a stale test call using the pre-
223e244f5setup_model_and_optimizerargument order; the test now passesModelTypefirst andmodel_providersecond.The A2A-overlap job had one numerical mismatch in the HybridEP padding-mask case. The exact synthetic merge tested already contains dev fix
d1384c2d9and its dedicated regression tests, and the same case passed on that fix and on the prior nightly SHA, so no duplicate production change was added; the case is being rerun unchanged on the amended SHA.CI follow-up: run 29383265299
Workflow 29383265299 ran on
e348ed156e84b171387fa42a6a7a1b6a1153439b. All unit-test buckets passed, including the previously failing A2A-overlap case. The non-MBridge functional failures had exactly two root causes across all 88 failed artifacts:pretrain(..., model_provider, model_type, forward_step)call order while main commit223e244f5changed the API topretrain(..., model_type, forward_step, model_provider=None). This boundforward_stepas the model provider and failed withTypeError: forward_step() got an unexpected keyword argument 'pre_process'.87268231028: the merge adopted223e244f5's config-container ModelBuilder path and removed the obsolete “VPP must raise” unit test, but accidentally retained dev's stale runtime assertion. CoreHybridModelalready accepts, stores, and usesvp_stage.Rolling fix
dc693dae557174b95da76b2c7e3ab7d6d832b7c7aligns the GPT and multimodal call sites with the new signature and restores main's intentional Hybrid VPP assertion removal. The pre-push dev-feature audit adds exactly seven removed exact lines versus the prior PR head (two obsolete positional-provider lines and five assertion lines); all seven are intentional consequences of223e244f5, not dropped dev functionality.Local verification: Ruff and
py_compilepass on all three changed files; the Hybrid builder unit file passes in the existing Megatron CI container (35 passed). MBridge is report-only for this iteration per the PR owner's direction.