Skip to content

[https://nvbugs/6812381][fix] Split GB200-4_GPUs-PyTorch-Post-Merge into two shards - #20780

Merged
HuiGao-NV merged 1 commit into
NVIDIA:mainfrom
tensorrt-cicd:repair-bot-v2/nvbug-6812381-r28
Oct 23, 2026
Merged

HuiGao-NV merged 1 commit into
NVIDIA:mainfrom
tensorrt-cicd:repair-bot-v2/nvbug-6812381-r28

Conversation

@trtllm-agent

@trtllm-agent trtllm-agent commented Oct 21, 2026 •

Copy link
Copy Markdown
Collaborator

Description

GB200-4_GPUs-PyTorch-Post-Merge-1 is the only shard (split 1/1) for the stage: post_merge block of l0_gb200_multi_gpus. It runs all 42 of those cases on one GB200 x4 node. Together they now need about 260 minutes of pytest time, but the Slurm walltime is 240 minutes. Since 2026-09-02 the stage hit Slurm TIMEOUT in 75 of 80 post-merge runs. The Jenkins agent then drops ("The channel is closing down"), and the cases after the cutoff never run.

The stage did not get slower per case: the 27 cases that ran both in a passing August build and in a current timed-out build took 136 and 137 minutes. What changed is that several long cases were added or unwaived (the two Mistral-Large-3 cases, TestNemotronV3Ultra::test_nvfp4_parallelism[ADP2_PP2], and several DeepSeek-V3-Lite PP cases). That pushed a stage that already ran at 220-230 minutes past the walltime.

Fix

Split the stage into two shards, GB200-4_GPUs-PyTorch-Post-Merge-1 and GB200-4_GPUs-PyTorch-Post-Merge-2 (split 1/2 and 2/2), as was done for the pre-merge GB200-4_GPUs-PyTorch-* stages in #14836. The test list, the waivers and the per-test timeouts do not change, and each case still runs in exactly one shard.

Test Coverage

The stage was run the way CI runs it (same image, same --test-list, waivers, 3600 s per-test timeout, --splitting-algorithm least_duration with the stage's --splits/--group), on GB200 x4 nodes with a 4-hour walltime, at 522daa8 with its post-merge wheel:

Run Result
Before: one shard (split 1/1) Slurm TIMEOUT at 4:00:23. 38 passed, 2 skipped (waived), 0 failed; TestQwen3_235B_A22B::test_nvfp4_4gpus[latency_moe_trtllm_eagle3] was cut off mid-run and TestMoEComm::test_moe_comm_boundary never started.
After: shard 1/2 Completed in 2:31:49. 21 passed, 0 failed (138 min pytest time).
After: shard 2/2 Completed in 2:20:51. 19 passed, 2 skipped (waived), 0 failed (122 min pytest time).

The two shards together ran all 42 listed cases, each exactly once. Even if the split were completely unbalanced, the 21 longest cases add up to 201 minutes, which is still under the walltime. scripts/test_to_stage_mapping.py --stages GB200-4_GPUs-PyTorch-Post-Merge-1 GB200-4_GPUs-PyTorch-Post-Merge-2 returns the same 42 cases as the single stage did before.

Fixes https://nvbugs/6812381

Dev Engineer Review

  • jenkins/L0_Test.groovy replaces the single post-merge stage with two stages.
  • Both stages use l0_gb200_multi_gpus, four GPUs, and two-way splitting.
  • The configuration change is consistent with the objective of reducing Slurm walltime pressure.
  • Review finding severity counts are unavailable from the supplied evidence.

QA Engineer Review

No test changes.

Per-File QA Perspective

  • jenkins/L0_Test.groovy: Verify that the two shards cover all 42 post-merge cases exactly once and retain the existing waivers and timeout settings.

…nto two shards

GB200-4_GPUs-PyTorch-Post-Merge-1 is the only shard (split 1/1) for the
42 post-merge cases of l0_gb200_multi_gpus. Those cases now need about
260 minutes of pytest time on one GB200 x4 node, but the Slurm walltime
is 240 minutes. Since 2026-09-02 the stage hit Slurm TIMEOUT in 75 of 80
post-merge runs. The Jenkins agent then drops ("The channel is closing
down"), and the cases after the cutoff never run.

Split the stage into two shards, as was done for the pre-merge
GB200-4_GPUs-PyTorch stages in NVIDIA#14836. The test list, the waivers and
the per-test timeouts do not change, and each case still runs in exactly
one shard.

Signed-off-by: trtllm-agent <296075020+trtllm-agent@users.noreply.github.com>
@coderabbitai

coderabbitai Bot commented Oct 21, 2026

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository: NVIDIA/TensorRT-LLM/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Enterprise
  • Run ID: 410a9b76-e688-42af-af2a-bd2f42a5e851
📥 Commits

Reviewing files that changed from the base of the PR and between afc1c16 and 0516095.

📒 Files selected for processing: 1
  • jenkins/L0_Test.groovy

Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 10 remain after this review.

Walkthrough

The GB200 4-GPU post-merge SLURM configuration now runs two shards instead of one. Both shards use the same platform, test list, hardware, and execution settings.

Changes

GB200 Test Sharding

Layer / File(s) Summary
Configure two test shards
jenkins/L0_Test.groovy
Shard 1 now uses a total split count of 2. The configuration adds shard 2 with the same platform, test list, hardware, and execution settings.

Priority: ⬇️ Low

Estimated code review effort: 1 (Trivial) | ~4 minutes

Change: Bug fix

Merge Risk: ⚪ Minimal · up to 05160

The two shards preserve the original test coverage and execution settings, with no identified merge-blocking risk.

Pre-merge checks: Passed 5
Check name Status Explanation
Title check Passed The title clearly identifies the fix and the affected GB200 post-merge stage. It follows the required NVBugs and type format.
Description check Passed The description explains the timeout issue, the two-shard solution, preserved test behavior, and test coverage with concrete results. It omits the PR Checklist section, but the required technical info…
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Description check

Explanation

The description explains the timeout issue, the two-shard solution, preserved test behavior, and test coverage with concrete results. It omits the PR Checklist section, but the required technical information is otherwise complete.

Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (1 skipped: 1 unsupported.)

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown

Automatically added "ci: full pre-merge approved" because this PR has satisfied the required GitHub review approvals. Unresolved review conversations and other required checks remain independent merge requirements.

@weiminwang-nv

Copy link
Copy Markdown
Contributor

/bot run --stage-list "GB200-4_GPUs-PyTorch-Post-Merge-*"

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #79829 [ run ] triggered by Bot. Commit: 0516095 Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #79829 [ run ] completed with state ABORTED. Commit: 0516095

Link to invocation

@BowenFu

BowenFu commented Oct 22, 2026

Copy link
Copy Markdown
Contributor

Bug engineer ownership

@HuiGao-NV, as the engineer assigned to the linked bug, you are responsible for driving this bot PR to resolution. Please coordinate review, address feedback and required code changes, get CI passing, and verify the original failure before driving it to merge. If the PR is obsolete or superseded, close it with a reason. Keep this PR updated with blockers and the next step.

@HuiGao-NV

Copy link
Copy Markdown
Collaborator

/bot run --stage-list "GB200-4_GPUs-PyTorch-Post-Merge-*"

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #79900 [ run ] triggered by Bot. Commit: 0516095 Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #79900 [ run ] completed with state SUCCESS. Commit: 0516095
/LLM/main/L0_MergeRequest_PR pipeline #65775 (Partly Tested) completed with status: 'SUCCESS'

CI Report

Link to invocation

@HuiGao-NV

Copy link
Copy Markdown
Collaborator

/bot skip --comment "Splitted stages passed"

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #79992 [ skip ] triggered by Bot. Commit: 0516095 Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #79992 [ skip ] completed with state SUCCESS. Commit: 0516095
Skipping testing for commit 0516095

Link to invocation

@HuiGao-NV
HuiGao-NV merged commit f806023 into NVIDIA:main Oct 23, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants