Repository navigation
Prototype: TensorRT execution provider (linux, CUDA 13.0) - #1
Draft
diegoferigo-rai wants to merge 7 commits into
Draft
diegoferigo-rai wants to merge 7 commits into
diegoferigo-rai wants to merge 7 commits into
Conversation
Wire up an optional TensorRT execution provider for the CUDA 13.0 linux builds (linux-64 and linux-aarch64), following the pytorch-feedstock style of encoding the accelerator in the build string. - recipe.yaml: `tensorrt` variant axis gated to CUDA 13.0; `_tensorrt` appended to the build string only on the TRT build; TensorRT host deps (libnvinfer-devel, libnvonnxparser-devel) and a provider-lib package test. - build-cpp.nu: enable onnxruntime_USE_TENSORRT and the builtin ONNX parser (dynamic libnvonnxparser, nothing static), TENSORRT_HOME=$PREFIX. - conda_build_config.yaml: `tensorrt` axis (linux) + local channel_sources for the locally-built TensorRT packages. Prototype only: TensorRT packages come from a local channel and CUDA 13.0 aarch64 artifacts are not built yet. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Regenerated .ci_support, pixi.toml and CI workflow for the TensorRT axis. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Skip non-linux platforms so the prototype only builds linux-64 and linux-aarch64, where the TensorRT execution provider is enabled. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Regenerated CI configs after restricting the matrix to linux. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Move the onnxruntime_providers_tensorrt.so check from an explicit `files` path to a `lib` entry, letting rattler-build expand it to the platform-specific library filename. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
conda-forge now ships the TensorRT packages (libnvinfer / libnvonnxparser and their -devel/-headers) with CUDA 13.0 builds for linux-64 and linux-aarch64, so the local channel_sources override is no longer needed.
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.
Approach
Optional TensorRT execution provider on the CUDA 13.0 linux builds
(
linux-64andlinux-aarch64), following the pytorch-feedstock style ofencoding the accelerator in the build string. A dedicated
tensorrtvariantaxis (linux) gates it; the
_tensorrtmarker only appears on the TRT build:cuda130_tensorrt_py310_h…_200cuda130_py310_h…_200cuda129_py310_h…_200cpu_py310_h…_0The inert
tensorrt: truecombinations (CPU / CUDA 12.9) are skipped, so noduplicate packages. The CI matrix is restricted to linux for the prototype.
Changes
recipe/recipe.yaml:tensorrt_enabledcontext gated to CUDA 13.0 via thetensorrtaxis;_tensorrtappended to the build string only on the TRT build;TensorRT host deps
libnvinfer-devel+libnvonnxparser-develunderif: tensorrt_enabled(run_exports pin the runtime libs);package_contentslibcheck foronnxruntime_providers_tensorrt; skipnot linux.recipe/build-cpp.nu: cmake flagsonnxruntime_USE_TENSORRT=ON,onnxruntime_USE_TENSORRT_BUILTIN_PARSER=ON,onnxruntime_TENSORRT_HOME=$PREFIX.Builtin parser -> shared
libnvonnxparser, nothing static.recipe/conda_build_config.yaml:tensorrtaxis (linux) + localchannel_sourcesfor the locally-built TensorRT packages.To adapt
channel_sources(
file:///…/staged-recipes/build_artifacts,conda-forge) with the real TensorRTpackages once they land on conda-forge.
linux-aarch64 TRT build won't solve until aarch64 packages are built.
libnvonnxparser) vs. static parser choice.