Skip to content

Add VPP support to typed pipeline boundaries - #7640

Open
Silas-Zeng wants to merge 2 commits into
NVIDIA:mainfrom
Silas-Zeng:codex/vpp-cross-layer-state
Open

Silas-Zeng wants to merge 2 commits into
NVIDIA:mainfrom
Silas-Zeng:codex/vpp-cross-layer-state

Conversation

@Silas-Zeng

@Silas-Zeng Silas-Zeng commented Sep 24, 2026 •

Copy link
Copy Markdown

What does this PR do?

#7608 adds typed payload boundaries for non-interleaved PP. VPP still rejects the communicator, and a single payload queue cannot distinguish virtual chunks across the physical last-to-first wrap.

This patch adds per-chunk payload factories, plans, cursors, send/receive queues, and source/destination chunk identities. The interleaved schedule passes chunk IDs through warmup, steady state, and cooldown and checks that every planned payload is consumed.

Issue tracking

Related to #7565. Depends on #7608.

Scope

Supported path: eager training with non-overlapped PP and TP=CP=1. Recompute, CUDA graphs, packed sequences, and overlapping P2P remain rejected at communicator entry.

Tests

  • Baseline: unmodified Add prepared PP boundaries for shared cross-layer state #7608 reproduces the VPP constructor failure for virtual_pipeline_model_parallel_size=2.
  • 7 focused payload and VPP bookkeeping tests.
  • Two-rank CPU/Gloo transport with distinct chunk schemas and the cyclic VPP wrap route.
  • Two-process single-GPU interleaved forward/backward schedule with CUDA tensors on an RTX 3050 Ti.
  • Single-GPU CUDA transport smoke on an RTX 3050 Ti.
  • Black 26.3.0, isort 5.13.2, Ruff, compileall, and git diff --check.

The tested environment has one physical GPU; multi-GPU NCCL and full-model convergence still require the upstream CI or a multi-GPU run.

0z5a and others added 2 commits September 23, 2026 12:01
Signed-off-by: 0z5a <dezhen.lu@student.uni-tuebingen.de>
Signed-off-by: HR-zengzzz <hrzeng123456@gmail.com>
@copy-pr-bot

copy-pr-bot Bot commented Sep 24, 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.

@Silas-Zeng
Silas-Zeng force-pushed the codex/vpp-cross-layer-state branch 2 times, most recently from a97909d to ce4740e Compare September 24, 2026 06:15
@Silas-Zeng
Silas-Zeng marked this pull request as ready for review September 24, 2026 07:11
@Silas-Zeng
Silas-Zeng requested review from a team as code owners September 24, 2026 07:11
@svcnvidia-nemo-ci
svcnvidia-nemo-ci requested a review from a team September 24, 2026 07:12
@Silas-Zeng
Silas-Zeng force-pushed the codex/vpp-cross-layer-state branch from b1c97eb to ce4740e Compare September 24, 2026 15:47
@svcnvidia-nemo-ci svcnvidia-nemo-ci added the waiting-on-maintainers Waiting on maintainers to respond label Sep 26, 2026

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

community-request waiting-on-maintainers Waiting on maintainers to respond

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants