Skip to content

[None][perf] Improve PyTorch encoder-decoder support and performance - #16158

Merged
cascade812 merged 8 commits into
NVIDIA:mainfrom
cascade812:guiju/encoder-decoder_perf
Jul 20, 2026
Merged

[None][perf] Improve PyTorch encoder-decoder support and performance#16158
cascade812 merged 8 commits into
NVIDIA:mainfrom
cascade812:guiju/encoder-decoder_perf

Conversation

@cascade812

@cascade812 cascade812 commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

Description

This PR broadens and optimizes encoder-decoder support in the PyTorch backend for T5, BART, and mBART. It enables overlap-scheduler execution, removes recurring decode overhead, improves T5 kernels, aligns BART and mBART generation behavior with the legacy TensorRT encoder-decoder path (which differs slightly from Hugging Face generate() at the output-token limit; see item 4), and adds customer-facing documentation and test coverage.

Runtime changes

  1. Enable the overlap scheduler for encoder-decoder models (py_executor.py)

    • Remove the encoder-decoder overlap-scheduler guard and run the encoder step from _executor_loop_overlap before decoder forward execution, so encoder-decoder models now support the PyTorch backend's default overlap scheduling.
  2. Reduce recurring decode overhead (model_engine.py)

    • Reuse cross-attention metadata across stable CUDA-graph generation steps. When no new encoder request arrives and the batch composition (request IDs and cached encoder token counts) is unchanged, skip the update_cross_metadata() + prepare() calls (repeated tensor allocation and host-to-device copies) and refresh only the decoder-side references. The cached state is invalidated whenever the batch composition changes or execution leaves the CUDA-graph path.
    • Encoder-only steps now use the leaner prepare_encoder_only() instead of the full prepare().
  3. Improve T5 kernels (modeling_t5.py)

    • Thread residuals through the encoder and decoder layer stacks so the residual addition fuses into the following RMSNorm where the fused add+RMSNorm kernel is available. FP16 keeps the Hugging Face inf-clamping semantics.
    • Use the fused FlashInfer GELU-tanh-and-multiply operation for gated gelu_new MLPs in FP16/BF16.

Model and generation behavior changes

  1. Seed BART/mBART forced BOS in the decoder prompt instead of a logits processor (llm.py, sampling_params.py, base_worker.py, result.py)

    • When a BART or mBART checkpoint defines forced_bos_token_id, the token is now placed directly in the internal decoder prompt ([decoder_start_token_id, forced_bos_token_id]) rather than forced by the per-step _BartForcedTokensLogitsProcessor, which is removed. This eliminates per-step host work and keeps the decode path CUDA-graph and overlap friendly.
    • SamplingParams._decoder_output_token_prefix records the moved token; the result layer restores it to the user-visible token IDs and logprobs, and max_tokens deduction subtracts the prefix. The forced BOS still counts against max_tokens, so BART/mBART requests with forced BOS require max_tokens >= 2 (validated with a clear error).
    • Behavior change: forced_eos_token_id is no longer injected when a sequence reaches max_tokens; the model-selected final token is preserved and finish_reason="length" is reported. EOS remains a natural stopping token via end_id. This matches the legacy TensorRT encoder-decoder path but differs from Hugging Face generate(), which forces EOS as the final token when a sequence reaches the output limit.
  2. Complete mBART model support (modeling_bart.py)

    • Add mBART pre-norm layer ordering, final encoder/decoder stack layer norms (including weight conversion), and checkpoint-selected MLP activation via ACT2FN, while preserving BART post-norm behavior.
  3. Add an encoder-decoder user guide (docs/source/models/encoder-decoder.md)

    • Documents supported T5, BART, and mBART checkpoints (Whisper is explicitly marked as not yet supported), the feature-support matrix, attention backend selection, KV cache managers V1/V2, greedy and beam decoding, batching, decoder CUDA graphs, overlap scheduling, tensor parallelism, serving, runtime sizing, performance, and troubleshooting.

Performance

The following benchmarks compare the PyTorch backend with the legacy TensorRT encoder-decoder path for large-batch inference. The measurements use BF16 on one H100 80 GB GPU with greedy decoding, natural EOS stopping, an output limit of 128 tokens, and mixed encoder input lengths from 260 to 440 tokens. The Flan-T5-XL results are the average of 10 timed runs after 3 warmup runs; the BART results are the average of 20 timed runs after 5 warmup runs. Executed-token throughput includes the terminal EOS token for both paths.

Flan-T5-XL

For Flan-T5-XL, the PyTorch backend performs on par with the legacy TensorRT path, with slightly lower latency and higher executed-token throughput across the tested batch sizes.

Batch size Legacy TensorRT latency PyTorch latency PyTorch latency improvement over legacy TensorRT Legacy TensorRT executed tokens/s PyTorch executed tokens/s
32 727.6 ms 706.1 ms 3.0% faster 3,153 3,312
64 1,225.0 ms 1,136.7 ms 7.2% faster 3,863 4,184
128 2,056.8 ms 1,999.3 ms 2.8% faster 4,601 4,768

BART-large-CNN

For BART-large-CNN, the PyTorch backend has 21.9% to 36.0% higher latency than the legacy TensorRT path across the tested batch sizes (down from 67% to 155% before the overlap scheduler and cross-attention fast path in this PR). The remaining gap is dominated by host-side input preparation and sampling; work to close it is in progress and will come in a separate PR.

Batch size Legacy TensorRT latency PyTorch latency PyTorch latency difference Legacy TensorRT executed tokens/s PyTorch executed tokens/s
32 229.9 ms 280.2 ms 21.9% slower 12,611 10,662
64 252.2 ms 343.0 ms 36.0% slower 22,007 16,209
128 352.3 ms 472.7 ms 34.2% slower 31,544 23,518

Test Coverage

  • Extended the BART and T5 end-to-end tests with overlap-scheduler variants across KV cache managers V1/V2, CUDA graphs on/off, greedy decoding, and beam search; the overlap runs must produce outputs identical to the existing non-overlap runs.
  • Added an mBART end-to-end test covering pre-norm model selection, source-language tokenization, forced target-language BOS, and expected greedy translation tokens.
  • Test-list updates: added the overlap and mBART cases to l0_h100.yml; moved the single-GPU encoder-decoder suite from l0_b200.yml to l0_l40s.yml; removed the TP2 cases from l0_dgx_b200.yml that are already covered in l0_dgx_h100.yml.

Summary by CodeRabbit

  • New Features

    • Added support for overlap-scheduler execution in encoder-decoder generation flows.
    • Improved handling for stable generation steps to better reuse cached cross-attention state.
  • Bug Fixes

    • Ensured logit post-processing runs at the correct time when overlap scheduling is enabled.
    • Fixed encoder-decoder overlap execution so encoder work is performed when needed.
  • Tests

    • Expanded end-to-end coverage for encoder-decoder models to validate overlap-scheduler and non-overlap behavior produce matching results.

Signed-off-by: Guiju Zhang <7135567+cascade812@users.noreply.github.com>
@cascade812
cascade812 requested a review from a team as a code owner July 9, 2026 00:29
@cascade812
cascade812 requested a review from lancelly July 9, 2026 00:29
@cascade812

Copy link
Copy Markdown
Collaborator Author

/bot run --disable-fast-fail

@coderabbitai

coderabbitai Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

This PR enables the overlap scheduler for encoder-decoder models. It adds a defer_logits_post_processors flag to PyTorchModelEngine to postpone logits post-processing, adds a cross-attention metadata fast path for stable generation steps, removes an overlap-scheduler restriction in PyExecutor, wires deferred post-processing into the overlap executor loop including the encoder step, and extends BART/T5 integration tests with overlap-scheduler parametrization.

Changes

Overlap scheduler support for encoder-decoder

Layer / File(s) Summary
Deferred logits post-processor flag
tensorrt_llm/_torch/pyexecutor/model_engine.py
defer_logits_post_processors attribute added; forward() calls _execute_logit_post_processors(...) only when the flag is unset.
Cross-attention stable-step fast path
tensorrt_llm/_torch/pyexecutor/model_engine.py
_cross_attn_stable_cached_tokens state tracks stable generation steps; _prepare_enc_dec_cross_attn_inputs reuses cached cross-attention metadata and refreshes only pointer fields when encoder tokens are unchanged, otherwise falls back to full update_cross_metadata/prepare().
Executor overlap-loop wiring
tensorrt_llm/_torch/pyexecutor/py_executor.py
Removes the NotImplementedError blocking overlap scheduler for encoder-decoder; sets defer_logits_post_processors for pipeline-parallel runs; runs the encoder step inside _executor_loop_overlap; explicitly executes deferred post-processing before guided decoding/sampling.
BART overlap-scheduler test coverage
tests/integration/defs/llmapi/test_llm_api_pytorch_bart.py
Adds disable_overlap_scheduler parameter to _test_case, new test-case entries, _run_bart_pytorch_generate_encoder_decoder, and the parametrized end-to-end test.
T5 overlap-scheduler test coverage
tests/integration/defs/llmapi/test_llm_api_pytorch_t5.py
Adds disable_overlap_scheduler parameter to _test_case, new test-case entries, _run_t5_pytorch_generate_encoder_decoder, and the parametrized end-to-end test.

Estimated code review effort: 4 (Complex) | ~60 minutes

Sequence Diagram(s)

sequenceDiagram
  participant ExecutorLoopOverlap
  participant ModelEngine
  participant LogitPostProcessors
  participant GuidedDecoder

  ExecutorLoopOverlap->>ModelEngine: run encoder step (encoder_requests)
  ExecutorLoopOverlap->>ModelEngine: forward(scheduled_batch)
  ModelEngine-->>ExecutorLoopOverlap: batch_outputs
  alt defer_logits_post_processors enabled
    ExecutorLoopOverlap->>LogitPostProcessors: _execute_logit_post_processors(scheduled_batch, batch_outputs)
    LogitPostProcessors-->>ExecutorLoopOverlap: processed outputs
  end
  ExecutorLoopOverlap->>GuidedDecoder: proceed with sampling
Loading

Possibly related PRs

  • NVIDIA/TensorRT-LLM#16010: Refactors the same _execute_logit_post_processors call path in PyTorchModelEngine that this PR makes conditional via defer_logits_post_processors.

Suggested reviewers: achartier, Wanli-Jiang, Superjomn

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
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.
Title check ✅ Passed The title is concise, formatted like the repository template, and matches the PR’s encoder-decoder performance work.
Description check ✅ Passed The description is detailed and covers the required problem, solution, and test coverage, with only minor template checklist items omitted.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (2)
tests/integration/defs/llmapi/test_llm_api_pytorch_t5.py (1)

407-455: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Same overlap coverage gaps as the BART file.

New overlap cases are limited to t5-small, use_kv_cache_manager_v2=False, and tensor_parallel_size=1. Consider adding an overlap case with use_kv_cache_manager_v2=True (greedy path) and one with tensor_parallel_size=2, since overlap-scheduler gating depends on pp_size, not TP size.

As with the BART file, none of these tests assert that the overlap scheduler was actually engaged — they only compare outputs to non-overlap baselines. Consider adding an executor-state assertion (paralleling _assert_decoder_cuda_graph_state) for TP=1 runs to guard against a silent fallback regression.

Coverage verdict: adequate for basic output-parity regression detection, but insufficient to catch a silent overlap-scheduler wiring regression or KV-cache-v2/TP interactions; recommend as follow-up if not addressed here.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@tests/integration/defs/llmapi/test_llm_api_pytorch_t5.py` around lines 407 -
455, The overlap-scheduler coverage in the T5 integration tests is incomplete
because the new cases only exercise `t5-small` with
`use_kv_cache_manager_v2=False` and `tensor_parallel_size=1`. Add at least one
overlap case through the existing `_test_case` helper for the
`use_kv_cache_manager_v2=True` greedy path and another with
`tensor_parallel_size=2`, since gating depends on `pp_size` rather than TP size.
Also add an executor-state assertion for TP=1 runs, similar to
`_assert_decoder_cuda_graph_state`, so the tests verify that the overlap
scheduler actually engaged instead of only comparing outputs.

Source: Path instructions

tests/integration/defs/llmapi/test_llm_api_pytorch_bart.py (1)

173-216: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Overlap test coverage is a good start but has two gaps worth a follow-up.

The new overlap cases only cover use_kv_cache_manager_v2=False and tensor_parallel_size=1. Given the PR also touches the KV-cache-manager-v2 path indirectly (cross-attention fast path caching) and TP behavior is independent of the overlap-scheduler gating (only pp_size disables overlap), consider adding:

  • one overlap case with use_kv_cache_manager_v2=True (greedy only, matching existing v2 constraints), and
  • one overlap case with tensor_parallel_size=2 (mirroring the existing TP2 cases at lines 218-239).

Also, none of these tests directly assert the overlap scheduler was actually engaged (e.g. checking llm._executor.event_loop or an equivalent state), they only compare final outputs to the non-overlap baseline. A wiring regression that silently falls back to the non-overlap loop would still pass. Consider adding an assertion similar to _assert_decoder_cuda_graph_state (lines 325-341) that inspects executor state for TP=1 runs.

Coverage verdict: current overlap coverage is adequate for basic regression detection but insufficient to catch a silent fallback to the non-overlap path or KV-cache-v2/TP interactions; recommend tracking the above as follow-up if not addressed here.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@tests/integration/defs/llmapi/test_llm_api_pytorch_bart.py` around lines 173
- 216, Add follow-up overlap-scheduler coverage in the BART integration test
cases: extend the existing `_test_case` overlap block to include one
`use_kv_cache_manager_v2=True` greedy case and one `tensor_parallel_size=2`
case, matching the constraints already used elsewhere in
`test_llm_api_pytorch_bart.py`. Also add an assertion in the TP=1 overlap tests
that explicitly verifies the overlap path was engaged by inspecting the same
executor state used by `_assert_decoder_cuda_graph_state` or an equivalent
`llm._executor` event-loop/scheduler indicator, so a silent fallback to the
non-overlap path cannot pass.

Source: Path instructions

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@tensorrt_llm/_torch/pyexecutor/model_engine.py`:
- Around line 2663-2697: Gate the CUDA-graph cross-attn fast path on request
identity as well as cached-token counts. In the `is_stable_gen_step` branch
inside `model_engine.py`, the reused `attn_metadata.cross` must not skip
`prepare()` when `request_ids` have changed or been reordered, because
`VanillaAttentionMetadata.prepare()` rebuilds `block_ids_per_seq` from them.
Update the stability check around `attn_metadata.is_cuda_graph`,
`has_cross_sub_metadata`, and `_cross_attn_stable_cached_tokens` so that any
request swap or order change falls back to `update_cross_metadata()` and
`prepare()` instead of reusing stale cross metadata.

---

Nitpick comments:
In `@tests/integration/defs/llmapi/test_llm_api_pytorch_bart.py`:
- Around line 173-216: Add follow-up overlap-scheduler coverage in the BART
integration test cases: extend the existing `_test_case` overlap block to
include one `use_kv_cache_manager_v2=True` greedy case and one
`tensor_parallel_size=2` case, matching the constraints already used elsewhere
in `test_llm_api_pytorch_bart.py`. Also add an assertion in the TP=1 overlap
tests that explicitly verifies the overlap path was engaged by inspecting the
same executor state used by `_assert_decoder_cuda_graph_state` or an equivalent
`llm._executor` event-loop/scheduler indicator, so a silent fallback to the
non-overlap path cannot pass.

In `@tests/integration/defs/llmapi/test_llm_api_pytorch_t5.py`:
- Around line 407-455: The overlap-scheduler coverage in the T5 integration
tests is incomplete because the new cases only exercise `t5-small` with
`use_kv_cache_manager_v2=False` and `tensor_parallel_size=1`. Add at least one
overlap case through the existing `_test_case` helper for the
`use_kv_cache_manager_v2=True` greedy path and another with
`tensor_parallel_size=2`, since gating depends on `pp_size` rather than TP size.
Also add an executor-state assertion for TP=1 runs, similar to
`_assert_decoder_cuda_graph_state`, so the tests verify that the overlap
scheduler actually engaged instead of only comparing outputs.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: d3fd0068-131f-437c-a1e7-36e5866bc1bd

📥 Commits

Reviewing files that changed from the base of the PR and between 4cd00bb and 035aa02.

📒 Files selected for processing (4)
  • tensorrt_llm/_torch/pyexecutor/model_engine.py
  • tensorrt_llm/_torch/pyexecutor/py_executor.py
  • tests/integration/defs/llmapi/test_llm_api_pytorch_bart.py
  • tests/integration/defs/llmapi/test_llm_api_pytorch_t5.py

Comment thread tensorrt_llm/_torch/pyexecutor/model_engine.py
@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #58330 Bot args parsing error: usage: /bot [-h]
{run,kill,skip,submit,reviewers,reuse-pipeline,reuse-review} ...
/bot: error: unrecognized arguments: --disable-fast-fail

Link to invocation

@cascade812

Copy link
Copy Markdown
Collaborator Author

/bot run --disable-fail-fast

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #58371 [ run ] triggered by Bot. Commit: 035aa02 Link to invocation

@cascade812

Copy link
Copy Markdown
Collaborator Author

/bot kill

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #58376 [ kill ] triggered by Bot. Commit: 035aa02 Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #58371 [ run ] completed with state ABORTED. Commit: 035aa02

Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #58376 [ kill ] completed with state SUCCESS. Commit: 035aa02
Successfully killed previous jobs for commit 035aa02

Link to invocation

Signed-off-by: Guiju Zhang <7135567+cascade812@users.noreply.github.com>
@cascade812

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #59013 [ run ] triggered by Bot. Commit: 035aa02 Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #59013 [ run ] completed with state SUCCESS. Commit: 035aa02
/LLM/main/L0_MergeRequest_PR pipeline #47541 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

Signed-off-by: Guiju Zhang <7135567+cascade812@users.noreply.github.com>
@cascade812
cascade812 requested review from a team as code owners July 13, 2026 21:51
@cascade812 cascade812 changed the title [None][perf] Overlap scheduler and cross-attn fast path for enc-dec [None][perf] improve PyTorch encoder-decoder support and performance Jul 13, 2026
@cascade812 cascade812 changed the title [None][perf] improve PyTorch encoder-decoder support and performance [None][perf] Improve PyTorch encoder-decoder support and performance Jul 13, 2026
@cascade812

Copy link
Copy Markdown
Collaborator Author

/bot run --disable-fail-fast

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #59040 [ run ] triggered by Bot. Commit: 579b392 Link to invocation

Comment thread docs/source/models/encoder-decoder.md Outdated
Comment thread tests/integration/test_lists/test-db/l0_h100.yml Outdated

@Wanli-Jiang Wanli-Jiang left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM for model changes. Better to ask review from request input/output response changes, it is a bit complicated for me.

@Tabrizian Tabrizian left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor comments, otherwise LGTM.

Comment thread docs/source/models/encoder-decoder.md Outdated
Comment thread docs/source/models/encoder-decoder.md Outdated
Comment thread docs/source/models/encoder-decoder.md
Comment thread tensorrt_llm/_torch/pyexecutor/py_executor.py Outdated
Signed-off-by: Guiju Zhang <7135567+cascade812@users.noreply.github.com>
@cascade812

Copy link
Copy Markdown
Collaborator Author

/bot run --disable-fail-fast

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60070 [ run ] triggered by Bot. Commit: 335032c Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60070 [ run ] completed with state SUCCESS. Commit: 335032c
/LLM/main/L0_MergeRequest_PR pipeline #48459 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@cascade812

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60090 [ run ] triggered by Bot. Commit: 335032c Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60090 [ run ] completed with state FAILURE. Commit: 335032c
/LLM/main/L0_MergeRequest_PR pipeline #48477 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@cascade812

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60122 [ run ] triggered by Bot. Commit: 335032c Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60122 [ run ] completed with state FAILURE. Commit: 335032c
/LLM/main/L0_MergeRequest_PR pipeline #48505 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@cascade812

Copy link
Copy Markdown
Collaborator Author

/bot run --disable-fail-fast

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60130 [ run ] triggered by Bot. Commit: 335032c Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60130 [ run ] completed with state FAILURE. Commit: 335032c
/LLM/main/L0_MergeRequest_PR pipeline #48512 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@cascade812

Copy link
Copy Markdown
Collaborator Author

/bot run --disable-fail-fast

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60186 [ run ] triggered by Bot. Commit: 335032c Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60186 [ run ] completed with state FAILURE. Commit: 335032c
/LLM/main/L0_MergeRequest_PR pipeline #48559 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@cascade812

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60195 [ run ] triggered by Bot. Commit: 335032c Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60195 [ run ] completed with state FAILURE. Commit: 335032c
/LLM/main/L0_MergeRequest_PR pipeline #48565 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@cascade812

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60267 [ run ] triggered by Bot. Commit: 335032c Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #60267 [ run ] completed with state SUCCESS. Commit: 335032c
/LLM/main/L0_MergeRequest_PR pipeline #48626 completed with status: 'SUCCESS'

CI Report

Link to invocation

@cascade812
cascade812 merged commit 75c8699 into NVIDIA:main Jul 20, 2026
7 checks passed
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.

9 participants