Repository navigation
ci: Ship trtexec in the QA image when built on an inference-runtime base #9014
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
devin-ai-integration
wants to merge
6
commits into
main
Choose a base branch
from
devin/1792000001-qa-trtexec
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+8
−0
Open
Changes from all commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
66ea70e
ci: Ship trtexec in the QA image when built on an inference-runtime base
nv-rinig 5d6f4d6
ci: Also ship TensorRT builder resource libraries for trtexec
nv-rinig 0f4e58b
ci: Copy trtexec and builder resources directly from cibase
nv-rinig 960aa53
ci: Install trtexec builder resources next to libnvinfer
nv-rinig d267df1
ci: Trim trtexec install to the minimal copy
nv-rinig 0a03881
ci: Rely on the base image's trtexec symlink
nv-rinig File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I really think that we need to go with small changes.
Devin overcomplicating the solution IMO.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agreed it should be smaller. d267df1 trims it to two COPYs and a three-command RUN. The
TARGETPLATFORMbranch, the/tmpchecks and thelddcheck are gone. Themvuses/usr/lib/*-linux-gnu/, so it works on both x86 and sbsa.The single
COPYline on its own isn't enough, though. CI has already shown that:Unable to load library: libnvinfer_builder_resource_sm80.so.11.4.0. Those libraries aren't in inference-runtime.ld.so.conf.dentry. They have to be next to libnvinfer, which is why themvis needed (a COPY destination can't take the arch-specific directory)./usr/src/tensorrt/bin/trtexec(L0_device_memory_tracker, L0_memory_growth, L0_perf_*). Without the symlink they fail with the originalNo such file or directory. The alternative would be changing those test.sh files to call/usr/bin/trtexecdirectly. Let me know if you'd prefer that.d267df1 is being validated in pipeline 73388065 (L0 DMT only).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
there is a broken link that should recover after the above change
$ docker run --rm -it gitlab-master.nvidia.com:5005/dl/dgx/cuda:13.4-inference-runtime-ubuntu24.04--26.10 ls lrwxrwxrwx 1 root root 16 Oct 9 07:53 /usr/src/tensorrt/bin/trtexec -> /usr/bin/trtexecThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, that makes things simpler. Since the base image already has the symlink, copying
/usr/bin/trtexecback fixes the path, and mymkdir/ln -sstep was redundant. It would also have broken the build, becauseln -swithout-fcan't replace an existing link. 0a03881 drops it. What remains is the trtexec COPY plus the builder-resource COPY and a one-linemvthat puts the builder resources next to libnvinfer:The devel builds in pipeline 73388065 hadn't started when I pushed, so that pipeline validates 0a03881 (L0 DMT only).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
0a03881 passed: all 11 jobs in pipeline 73388065 succeeded, including
L0_device_memory_tracker--base(job 483799087). The py3-devel log shows the two COPYs and the singlemv, and trtexec built all three engines (vgg19, resnet50, resnet152). That covers the QA-image approach on A100; the DGX-Spark variants haven't run yet. Whether to keep this or move to model generation is your call (see the top-level thread).