Skip to content

[DEV] Generalized Tensor Parallelism (GTP) - #6882

Draft
xuwchen wants to merge 77 commits into
NVIDIA:devfrom
xuwchen:gtp-release-dev
Draft

xuwchen wants to merge 77 commits into
NVIDIA:devfrom
xuwchen:gtp-release-dev

Conversation

@xuwchen

@xuwchen xuwchen commented Aug 26, 2026 •

Copy link
Copy Markdown
Contributor
  • I, the PR author, have personally reviewed every line of this PR.

What does this PR do?

Generalized Tensor Parallelism (GTP) is a light-weight, high-performance and memory-efficient distributed training strategy implemented in Megatron-LM and TransformerEngine. It shards weight tensors across an GTP process group and reconstructs them on-demand via async all-gather, enabling training of larger models without sacrificing throughput by overlapping communication with computation.

GTP's Architecture (Mcore + TE)

• TE ships self-contained: Protocol + dispatcher no-op.
• GTP lives 100% in Mcore as one protocol implementer.

image

Changes Summary

image

Convergence Test (07/25)

image

Config: 1/4 of NT3 Ultra,27Layers512Experts, 32xGB200, GTP16_EP8EGTP2_m1g32_mxfp8_CG, Adam Optimizer, forceBalance, vs. 3D parallel baseline with parallelism=TP8_EP16DP2_m1g32, ~10k steps, dataset=blend_files/1T-phase1var-moresft.json

GTP matches well with the 3d baseline in lm loss curve:

Issue tracking

For PRs from open-source community contributors:

  • New features: a linked issue is required. Please open a feature request and reference it here before submitting the PR.
  • Small updates (bug fixes, minor improvements): a linked issue is recommended and will accelerate the PR review process.

Linked issue:

Contribution process

Pre-checks

  • I have added relevant unit tests
  • I have added relevant functional tests
  • I have added proper typing to my code Typing guidelines
  • I have added relevant documentation
  • I have run the autoformatter.sh on my PR

Code review

Feel free to message or comment @NVIDIA/mcore-oncall to help accelerate your merge into main. The less complex your PR is, the faster it will be approved and merged!

All PRs start as draft. If you open a non-draft PR, it will be automatically converted to draft.

Step 1: Mark PR as "Ready for Review"

  1. When your PR is ready, click Ready for Review.
  2. An oncall reviewer is auto-assigned and expert reviewers are notified based on your changes.
    • Some PRs may jump straight to step 2. This is determined by .github/CODEOWNERS.

⚠️ Only mark as ready once merge-conflicts are resolved and the CI is passing.
Final Review might get declined if these requirements are not fulfilled.

Step 2: Final Review

For PRs that change megatron/core, once all expert reviewers have approved, the Final Review label is applied automatically and final reviewers are assigned.

For PRs outside megatron/core, this step is skipped.

Step 3: Approved

Once all required reviewers have approved, the Approved label is applied automatically.

Merge

Any member of mcore-engineers will be able to merge your PR.

@copy-pr-bot

copy-pr-bot Bot commented Aug 26, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

fanshiqing and others added 21 commits September 21, 2026 23:57
Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
Signed-off-by: Deepak Narayanan <deepakn94@gmail.com>
Signed-off-by: Jiangfei Duan <jiangfeid@nvidia.com>
Co-authored-by: Jieming Zhang <jiemingz@nvidia.com>
Co-authored-by: Deepak Narayanan <deepakn94@gmail.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Jiangfei Duan <jiangfeid@nvidia.com>
(cherry picked from commit c5ff22b)
…ts (NVIDIA#6057)

Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
(cherry picked from commit 543b803)
Signed-off-by: Prajwal Singhania <psinghania@nvidia.com>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
(cherry picked from commit ec53920)
…DIA#6207)

Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
Co-authored-by: Jiangfei Duan <jiangfeid@nvidia.com>
(cherry picked from commit c2fd827)
Signed-off-by: Philip Monk <pmonk@nvidia.com>
(cherry picked from commit cd4afff)
…A#6080)

Signed-off-by: Philip Monk <pmonk@nvidia.com>
(cherry picked from commit abf04f4)
…DIA#6200)

Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
(cherry picked from commit 23b2ff2)
Signed-off-by: ykarnati <ykarnati@nvidia.com>
(cherry picked from commit 9a3c40b)
Signed-off-by: Jiangfei Duan <jiangfeid@nvidia.com>
(cherry picked from commit 9fa816b)
…eline schedules (NVIDIA#5901)

Signed-off-by: ilml <tolong@nvidia.com>
Signed-off-by: Tom Long <tolong@nvidia.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
(cherry picked from commit 6f7bcd4)
Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
Signed-off-by: ykarnati <ykarnati@nvidia.com>
Co-authored-by: ykarnati <ykarnati@nvidia.com>
(cherry picked from commit 9f3fe8c)
…n is the same used during the training iteration (NVIDIA#6048)

Signed-off-by: Deepak Narayanan <dnarayanan@nvidia.com>
(cherry picked from commit 8a424b8)
…DIA#6094)

Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
(cherry picked from commit 8e57bb6)
Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
(cherry picked from commit 79e6b6a)
…VIDIA#6383)

Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
(cherry picked from commit fb24e87)
… gather buffer (NVIDIA#6407)

Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
(cherry picked from commit e22bcb0)
…VIDIA#6446)

Signed-off-by: Jiangfei Duan <jiangfeid@nvidia.com>
(cherry picked from commit 81fe7c7)
…er size (NVIDIA#6379)

Signed-off-by: Deepak Narayanan <dnarayanan@nvidia.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
(cherry picked from commit 8534490)
Signed-off-by: Deepak Narayanan <dnarayanan@nvidia.com>
Signed-off-by: Keshav Santhanam <ksanthanam@nvidia.com>
Signed-off-by: Mikail Khona <mkhona@cw-dfw-cs-001-vscode-01.cm.cluster>
Signed-off-by: Mikail Khona (NVIDIA) <mkhona@nvidia.com>
Signed-off-by: Kezhi Kong <kezhik@nvidia.com>
Co-authored-by: Deepak Narayanan <dnarayanan@nvidia.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Mikail Khona (NVIDIA) <mkhona@nvidia.com>
Co-authored-by: Mikail Khona <mkhona@cw-dfw-cs-001-vscode-01.cm.cluster>
Co-authored-by: root <root@nvl72018-T18.cm.cluster>
Co-authored-by: Roger Waleffe <rwaleffe@nvidia.com>
Co-authored-by: Keshav Santhanam <ksanthanam@nvidia.com>
(cherry picked from commit 8e70f69)
Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
(cherry picked from commit 8ba5c60)
…#6373)

Signed-off-by: Jiangfei Duan <jiangfeid@nvidia.com>
(cherry picked from commit 814300c)
prajwal1210 and others added 5 commits September 22, 2026 00:45
…IA#6956)

Signed-off-by: Prajwal Singhania <psinghania@nvidia.com>
(cherry picked from commit 79097b4)
…7293)

Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
(cherry picked from commit 8349ade)
…ding (NVIDIA#7236)

Signed-off-by: Kwangjun Ahn <kwangjuna@nvidia.com>
(cherry picked from commit 976bff9)
…7403)

Signed-off-by: Deepak Narayanan <dnarayanan@nvidia.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit fb425d6)

Ported by hand: this tree builds e_proj / h_proj / eh_proj directly rather than
through a projection_kwargs dict, so pg_collection= is added at each of the three
build sites; the test file is taken verbatim.
…VIDIA#7477)

Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
(cherry picked from commit ea9fc43)
fanshiqing and others added 22 commits October 13, 2026 22:35
… backwards (NVIDIA#7470)

Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>

(cherry picked from PR NVIDIA#7470 @ 11fb9c2; not merged to main at pick time)

Signed-off-by: xuwenc <xuwenc@nvidia.com>
…checkpoint (NVIDIA#5077)

Signed-off-by: Deepak Narayanan <dnarayanan@nvidia.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
(cherry picked from commit 32a03b7)
(cherry picked from commit 6790b15c4d85144ba47de79c31f15e3b46b3bf86)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
(cherry picked from commit 71cfad8)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
…VIDIA#6381)

Signed-off-by: Deepak Narayanan <dnarayanan@nvidia.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
(cherry picked from commit fa83195)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
… mimo training (NVIDIA#6192)

Signed-off-by: ykarnati <ykarnati@nvidia.com>
(cherry picked from commit 0560fbb)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
NVIDIA#6726)

Signed-off-by: ykarnati <ykarnati@nvidia.com>
(cherry picked from commit 0db6baf)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
Signed-off-by: Zhiyu Li <zhiyul@nvidia.com>
(cherry picked from commit def07af)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
NVIDIA#7212)

Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
(cherry picked from commit 8962453)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
…ht support (NVIDIA#7318)

Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
(cherry picked from commit bb251bc)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
Signed-off-by: jbernloehr <jbernloehr@nvidia.com>
Co-authored-by: Dmytro Pykhtar <37850217+dimapihtar@users.noreply.github.com>
(cherry picked from commit e0ff7b0)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
Signed-off-by: jbernloehr <jbernloehr@nvidia.com>
Co-authored-by: Dmytro Pykhtar <37850217+dimapihtar@users.noreply.github.com>
(cherry picked from commit 07708e2)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
Signed-off-by: ykarnati <ykarnati@nvidia.com>
(cherry picked from commit 8d1ea07)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
…to one per iteration (NVIDIA#7573)

Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
(cherry picked from commit bf3ffc3)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
… unit tests (NVIDIA#7580)

Signed-off-by: Shiqing Fan <shiqingf@nvidia.com>
Signed-off-by: xuwenc <xuwenc@nvidia.com>
Co-authored-by: xuwenc <xuwenc@nvidia.com>
(cherry picked from commit c2fe300)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
…anks (NVIDIA#6683)

Signed-off-by: wanyingw <wanyingw@nvidia.com>
Signed-off-by: Wanying Wang <wanyingw@nvidia.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
(cherry picked from commit 9e137ad)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
Signed-off-by: Ajay Balasa <abalasa@nvidia.com>
(cherry picked from commit d113016)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
Signed-off-by: Tailai Ma <58548582+xiaoyao0115@users.noreply.github.com>
Signed-off-by: Tailai Ma <tailaim@nvidia.com>
(cherry picked from commit 07147d6)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
…VIDIA#7359)

Signed-off-by: Deepak Narayanan <dnarayanan@nvidia.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 2d67a5e)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
Signed-off-by: Teodor-Dumitru Ene <teodord.ene@gmail.com>

Port only the GTP test cleanup and DCP reset fixture; unrelated test suites are unchanged.

(cherry picked from commit fe5c25a)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
Signed-off-by: Jiangfei Duan <jiangfeid@nvidia.com>
(cherry picked from commit 9de9bde)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
Signed-off-by: Michal Futrega <mfutrega@nvidia.com>
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: gautham-kollu <gkollu@nvidia.com>
(cherry picked from commit cff9cf4)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
Signed-off-by: Jiangfei Duan <jiangfeid@nvidia.com>
(cherry picked from commit 6cad8f6)
Signed-off-by: xuwenc <xuwenc@nvidia.com>
)

Co-authored-by: Shiqing Fan <shiqingf@nvidia.com>
Signed-off-by: Haoran Zhang <haoranz@nvidia.com>
(cherry picked from commit 3303808)
Signed-off-by: xuwenc <xuwenc@nvidia.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.