fix(qa): ommit plugin creation if TensorRT branch is missed.#8783
Merged
Conversation
The upstream onnx_custom_plugin sample on github.com/NVIDIA/TensorRT
ships only the legacy IPluginV2DynamicExt implementation, which TRT 11
no longer loads -- the V2 plugin registry surface was removed. The
internal NVIDIA mirror has a V3 port cherry-picked to rel-11.0 while
rel-10.x branches keep V2.
- gen_qa_model_repository now clones the TensorRT samples from
gitlab-master.nvidia.com/TensorRT/TensorRT at rel-${TRT_BRANCH}
matching the runtime TRT version. If the branch is not available
the plugin model generation is skipped with a warning so the rest
of the QA model repository is still produced. CI_JOB_TOKEN is
passed through the docker run that executes the TRT script.
- gen_qa_trt_plugin_models.py picks the V2 or V3 plugin API at
runtime via hasattr (plugin_creator_list / add_plugin_v2 on TRT
10.x with V2 source, all_creators / add_plugin_v3 with phase=BUILD
on TRT 11 with V3 source).
Reverts the previous switch to the internal NVIDIA GitLab mirror. The public github.com/NVIDIA/TensorRT remains the source of truth; when a release/<major.minor> branch is not yet published for the runtime TRT version (e.g. release/11.0 ahead of the public sync), the plugin model generation skips with a warning instead of trying the fallback ladder. L0_trt_plugin loses coverage for that TRT version until the branch becomes available, but the rest of the QA model repository still produces. Also drops the CI_JOB_TOKEN passthrough on the TRT docker run since the public clone needs no authentication.
yinggeh
approved these changes
May 15, 2026
whoisj
approved these changes
May 15, 2026
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.
What does the PR do?
Two TensorRT 11 model API removals broke CustomHardmax / QA model generation on R100 (Vera Rubin). This PR makes the QA model gen tolerate both API surfaces and gracefully skips plugin model gen when the upstream branch is not yet published:
BuilderFlag.REJECT_EMPTY_ALGORITHMS(removed in TRT 11) is now guarded withhasattracross allgen_qa_*.pycallers; the flag is still applied on TRT <= 10.gen_qa_trt_plugin_models.pypicks the V2 or V3 plugin API at runtime (plugin_creator_list+add_plugin_v2on TRT 10.x;all_creators+add_plugin_v3withphase=BUILDon TRT 11).gen_qa_model_repositoryclones the TensorRT samples fromgithub.com/NVIDIA/TensorRT release/${TRT_BRANCH}matching the runtime TRT version. If the branch is not published yet (e.g. TRT 11 ahead of the public sync), plugin model generation is skipped with a[WARNING]instead of failing the whole job.Checklist
<commit_type>: <Title>Commit Type:
Related PRs:
Where should the reviewer start?
qa/common/gen_qa_trt_plugin_models.py-- the version-detect dispatch inget_trt_plugin()and theadd_plugin_v{2,3}selector increate_plan_modelfile().qa/common/gen_qa_model_repository(the rewritten plugin block) -- public-mirror clone withrelease/${TRT_BRANCH}and the skip-with-warning fallback.qa/common/gen_qa_*.pyfiles: the uniformhasattrguard aroundREJECT_EMPTY_ALGORITHMS.Test plan:
GenModels-buildpipeline on a TRT 10.x target (e.g. A100): plugin generates fromrelease/10.xV2 source, model artifacts appear underqa_trt_plugin_model_repository.GenModels-buildpipeline on R100 (TRT 11): plugin step skips with[WARNING] TensorRT release/11.0 not available on github.com/NVIDIA/TensorRT. Rest of the QA model repo still produces.release/11.0with the V3 port, R100 plugin gen resumes automatically via the V3 dispatch path -- no further code change needed.Caveats:
L0_trt_pluginwill report missingplan_*_CustomHardmaxartifacts on R100 untilrelease/11.0is published publicly ongithub.com/NVIDIA/TensorRT(the V3 port already exists on the internal mirror).Background
GitLab job
GenModels-build--x86-r100-10.7(job 317056972) failed ontrt.BuilderFlag.REJECT_EMPTY_ALGORITHMS-- removed in TRT 11. After guarding that, job 319122413 advanced and hit a second TRT 11 removal in the plugin path (IPluginRegistry.plugin_creator_list). Both are addressed here without breaking TRT 10.x.Related Issues: (use one of the action keywords Closes / Fixes / Resolves / Relates to)