docs: make Chinese README the default
Docker Image CI / build-ubuntu2004 (push) Waiting to run

This commit is contained in:
wehub-resource-sync
2026-07-13 10:46:02 +00:00
parent b83157e3fd
commit 859802c234
+126 -119
View File
@@ -1,78 +1,85 @@
<!-- WEHUB_ZH_README -->
> [!NOTE]
> 本文档由 WeHub 基于上游 README 翻译整理,属于社区翻译,非官方中文文档。
> [English](./README.en.md) · [原始项目](https://github.com/NVIDIA/TensorRT) · [上游 README](https://github.com/NVIDIA/TensorRT/blob/HEAD/README.md)
> 原作者、版权与许可证归属以原始项目及本仓库 LICENSE 文件为准。
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) [![Documentation](https://img.shields.io/badge/TensorRT-documentation-brightgreen.svg)](https://docs.nvidia.com/deeplearning/sdk/tensorrt-developer-guide/index.html) [![Roadmap](https://img.shields.io/badge/Roadmap-Q3_2026-brightgreen.svg)](documents/tensorrt_roadmap_2026q3.pdf)
# :mega::mega: Announcement :mega::mega:
# :mega::mega: 公告 :mega::mega:
TensorRT 11.X is now released with powerful new capabilities designed to accelerate your AI inference workflows. With this major version bump, TensorRT's API has been streamlined and a few legacy features from 10.X have been removed.
TensorRT 11.X 现已发布,带来强大的新功能,旨在加速您的 AI 推理工作流。随着此次重大版本升级,TensorRT API 已得到精简,并移除了 10.X 中的部分遗留功能。
Below provides migration guides for the following features:
- Weakly-typed networks and related APIs have been removed, replaced by [Strongly Typed Networks](https://docs.nvidia.com/deeplearning/tensorrt/latest/inference-library/advanced.html#strongly-typed-networks).
- Implicit quantization and related APIs have been removed, replaced by [Explicit Quantization](https://docs.nvidia.com/deeplearning/tensorrt/latest/inference-library/work-quantized-types.html#explicit-quantization)
- IPluginV2 and related APIs have been removed, replaced by [IPluginV3](https://docs.nvidia.com/deeplearning/tensorrt/latest/inference-library/extending-custom-layers.html#migrating-v2-plugins-to-ipluginv3)
- TREX tool has been removed, replaced by [Nsight Deep Learning Designer](https://docs.nvidia.com/nsight-dl-designer/UserGuide/index.html#visualizing-a-tensorrt-engine)
- Python bindings for Python 3.9 and older versions have been removed. RPM packages for RHEL/Rocky Linux 8 and RHEL/Rocky Linux 9 now depend on Python 3.12.
以下提供下列功能的迁移指南:
- 弱类型网络(Weakly-typed networks)及相关 API 已被移除,由 [强类型网络(Strongly Typed Networks](https://docs.nvidia.com/deeplearning/tensorrt/latest/inference-library/advanced.html#strongly-typed-networks).
- 隐式量化(Implicit quantization)及相关 API 已被移除,由 [显式量化(Explicit Quantization](https://docs.nvidia.com/deeplearning/tensorrt/latest/inference-library/work-quantized-types.html#explicit-quantization)
- IPluginV2 及相关 API 已被移除,由 [IPluginV3](https://docs.nvidia.com/deeplearning/tensorrt/latest/inference-library/extending-custom-layers.html#migrating-v2-plugins-to-ipluginv3)
- TREX 工具已被移除,由 [Nsight Deep Learning Designer](https://docs.nvidia.com/nsight-dl-designer/UserGuide/index.html#visualizing-a-tensorrt-engine)
- Python 3.9 及更早版本的 Python 绑定已被移除。适用于 RHEL/Rocky Linux 8 RHEL/Rocky Linux 9 的 RPM 软件包现依赖 Python 3.12
# TensorRT Open Source Software
# TensorRT 开源软件
This repository contains the Open Source Software (OSS) components of NVIDIA TensorRT. It includes the sources for TensorRT plugins and ONNX parser, as well as sample applications demonstrating usage and capabilities of the TensorRT platform. These open source software components are a subset of the TensorRT General Availability (GA) release with some extensions and bug-fixes.
本仓库包含 NVIDIA TensorRT 的开源软件(OSS)组件。其中包括 TensorRT 插件和 ONNX 解析器的源代码,以及演示 TensorRT 平台用法和能力的示例应用。这些开源软件组件是 TensorRT 正式发布(GA)版本的一个子集,并包含一些扩展和 bug 修复。
- For step-by-step walkthroughs of the TensorRT import paths (ONNX, Torch-TensorRT, HuggingFace/Optimum, Network Definition API) with examples and tooling tips, see the [Import Workflows Guide](documents/import_workflows.md).
- For the per-model support matrix across import paths (LLM, encoder-NLP, vision, audio, diffusion, multimodal), see [Supported Models](documents/supported_models.md).
- For code contributions to TensorRT-OSS, please see our [Contribution Guide](CONTRIBUTING.md) and [Coding Guidelines](CODING-GUIDELINES.md).
- For a summary of new additions and updates shipped with TensorRT-OSS releases, please refer to the [Changelog](CHANGELOG.md).
- For business inquiries, please contact [researchinquiries@nvidia.com](mailto:researchinquiries@nvidia.com)
- For press and other inquiries, please contact Hector Marinez at [hmarinez@nvidia.com](mailto:hmarinez@nvidia.com)
- 如需分步了解 TensorRT 导入路径(ONNXTorch-TensorRTHuggingFace/OptimumNetwork Definition API)的演练,并查看示例和工具使用技巧,请参阅 [导入工作流指南](documents/import_workflows.md)
- 如需查看各导入路径的逐模型支持矩阵(LLMencoder-NLP、视觉、音频、diffusion、多模态),请参阅 [支持的模型](documents/supported_models.md)
- 如需向 TensorRT-OSS 贡献代码,请参阅我们的 [贡献指南](CONTRIBUTING.md) 和 [编码规范](CODING-GUIDELINES.md)
- 如需了解 TensorRT-OSS 版本中新增加和更新的内容摘要,请参阅 [更新日志](CHANGELOG.md)
- 商务咨询请联系 [researchinquiries@nvidia.com](mailto:researchinquiries@nvidia.com)
- 媒体及其他咨询请联系 Hector Marinez[hmarinez@nvidia.com](mailto:hmarinez@nvidia.com)
Need enterprise support? NVIDIA global support is available for TensorRT with the [NVIDIA AI Enterprise software suite](https://www.nvidia.com/en-us/data-center/products/ai-enterprise/). Check out [NVIDIA LaunchPad](https://www.nvidia.com/en-us/launchpad/ai/ai-enterprise/) for free access to a set of hands-on labs with TensorRT hosted on NVIDIA infrastructure.
需要企业级支持?NVIDIA 全球支持可通过 [NVIDIA AI Enterprise 软件套件](https://www.nvidia.com/en-us/data-center/products/ai-enterprise/). 为 TensorRT 提供服务。访问 [NVIDIA LaunchPad](https://www.nvidia.com/en-us/launchpad/ai/ai-enterprise/) 可免费使用在 NVIDIA 基础设施上托管的一组 TensorRT 动手实验。
Join the [TensorRT and Triton community](https://www.nvidia.com/en-us/deep-learning-ai/triton-tensorrt-newsletter/) and stay current on the latest product updates, bug fixes, content, best practices, and more.
加入 [TensorRT Triton 社区](https://www.nvidia.com/en-us/deep-learning-ai/triton-tensorrt-newsletter/),了解最新产品更新、bug 修复、内容、最佳实践等。
# Agentic Coding Skills
Various skills related to TensorRT usage and benchmarking are available [here](.agents/skills). For installation, refer to the instructions of your preferred coding agent.
# 智能体编码技能(Agentic Coding Skills
# Prebuilt TensorRT Python Package
与 TensorRT 使用和基准测试相关的多种技能可在[此处](.agents/skills)获取。安装方法请参阅您首选编码智能体的说明。
We provide the TensorRT Python package for an easy installation. \
To install:
# 预构建 TensorRT Python 软件包
我们提供 TensorRT Python 软件包,便于安装。 \
安装方法:
```bash
pip install tensorrt
```
You can skip the **Build** section to enjoy TensorRT with Python.
您可以跳过 **Build(构建)** 部分,直接通过 Python 使用 TensorRT。
# Build
# 构建
## Prerequisites
## 前置条件
To build the TensorRT-OSS components, you will first need the following software packages.
要构建 TensorRT-OSS 组件,您首先需要以下软件包。
**TensorRT GA build**
**TensorRT GA 构建**
- TensorRT v11.1.0.106
- Available from direct download links listed below
- 可通过下方列出的直接下载链接获取
**System Packages**
**系统软件包**
- [CUDA](https://developer.nvidia.com/cuda-toolkit)
- Recommended versions:
- 推荐版本:
- cuda-13.3.0
- cuda-12.9.0
- [CUDNN (optional)](https://developer.nvidia.com/cudnn)
- [CUDNN(可选)](https://developer.nvidia.com/cudnn)
- cuDNN 8.9
- [GNU make](https://ftp.gnu.org/gnu/make/) >= v4.1
- [cmake](https://github.com/Kitware/CMake/releases) >= v3.31
- [python](https://www.python.org/downloads/) >= v3.10, <= v3.14.x
- [pip](https://pypi.org/project/pip/#history) >= v19.0
- Essential utilities
- 基础工具
- [git](https://git-scm.com/downloads), [pkg-config](https://www.freedesktop.org/wiki/Software/pkg-config/), [wget](https://www.gnu.org/software/wget/faq.html#download)
**Optional Packages**
**可选软件包**
- [NCCL](https://developer.nvidia.com/nccl/nccl-download) >= v2.19, < v3.0 — only when building with multi-device support (`-DTRT_BUILD_ENABLE_MULTIDEVICE=ON`) for the `sampleDistCollective` sample.
- Containerized build
- [NCCL](https://developer.nvidia.com/nccl/nccl-download) >= v2.19, < v3.0 — 仅在构建多设备支持(`-DTRT_BUILD_ENABLE_MULTIDEVICE=ON`)的 `sampleDistCollective` 示例时需要。
- 容器化构建
- [Docker](https://docs.docker.com/install/) >= 19.03
- [NVIDIA Container Toolkit](https://github.com/NVIDIA/nvidia-docker)
- PyPI packages (for demo applications/tests)
- PyPI 软件包(用于演示应用/测试)
- [onnx](https://pypi.org/project/onnx/)
- [onnxruntime](https://pypi.org/project/onnxruntime/)
- [tensorflow-gpu](https://pypi.org/project/tensorflow/) >= 2.5.1
@@ -80,16 +87,16 @@ To build the TensorRT-OSS components, you will first need the following software
- [pycuda](https://pypi.org/project/pycuda/) < 2021.1
- [numpy](https://pypi.org/project/numpy/)
- [pytest](https://pypi.org/project/pytest/)
- Code formatting tools (for contributors)
- 代码格式化工具(供贡献者使用)
- [Clang-format](https://clang.llvm.org/docs/ClangFormat.html)
- [Git-clang-format](https://github.com/llvm-mirror/clang/blob/master/tools/clang-format/git-clang-format)
> NOTE: [onnx-tensorrt](https://github.com/onnx/onnx-tensorrt), [cub](http://nvlabs.github.io/cub/), and [protobuf](https://github.com/protocolbuffers/protobuf.git) packages are downloaded along with TensorRT OSS, and not required to be installed.
> 注意:[onnx-tensorrt](https://github.com/onnx/onnx-tensorrt), [cub](http://nvlabs.github.io/cub/), [protobuf](https://github.com/protocolbuffers/protobuf.git) 软件包会随 TensorRT OSS 一起下载,无需单独安装。
## Downloading TensorRT Build
## 下载 TensorRT 构建
1. #### Download TensorRT OSS
1. #### 下载 TensorRT OSS
```bash
git clone -b main https://github.com/nvidia/TensorRT TensorRT
@@ -97,18 +104,18 @@ To build the TensorRT-OSS components, you will first need the following software
git submodule update --init --recursive
```
2. #### (Optional - if not using TensorRT container) Specify the TensorRT GA release build path
2. #### (可选 - 若不使用 TensorRT 容器)指定 TensorRT GA 发布版构建路径
If using the TensorRT OSS build container, TensorRT libraries are preinstalled under `/usr/lib/x86_64-linux-gnu` and you may skip this step.
若使用 TensorRT OSS 构建容器,TensorRT 库已预装在 `/usr/lib/x86_64-linux-gnu` 下,可跳过此步骤。
Else download and extract the TensorRT GA build from [NVIDIA Developer Zone](https://developer.nvidia.com) with the direct links below:
否则请从 [NVIDIA Developer Zone](https://developer.nvidia.com) 通过下方直接链接下载并解压 TensorRT GA 构建:
- [TensorRT 11.1.0.106 for CUDA 13.3, Linux x86_64](https://developer.nvidia.com/downloads/compute/machine-learning/tensorrt/11.1.0/tars/TensorRT-Enterprise-11.1.0.106-Linux-x86_64-cuda-13.3-Release-external.tar.zst)
- [TensorRT 11.1.0.106 for CUDA 12.9, Linux x86_64](https://developer.nvidia.com/downloads/compute/machine-learning/tensorrt/11.1.0/tars/TensorRT-Enterprise-11.1.0.106-Linux-x86_64-cuda-12.9-Release-external.tar.zst)
- [TensorRT 11.1.0.106 for CUDA 13.3, Windows x86_64](https://developer.nvidia.com/downloads/compute/machine-learning/tensorrt/11.1.0/zip/TensorRT-Enterprise-11.1.0.106-Windows-amd64-cuda-13.3-Release-external.zip)
- [TensorRT 11.1.0.106 for CUDA 12.9, Windows x86_64](https://developer.nvidia.com/downloads/compute/machine-learning/tensorrt/11.1.0/zip/TensorRT-Enterprise-11.1.0.106-Windows-amd64-cuda-12.9-Release-external.zip)
- [适用于 CUDA 13.3Linux x86_64 的 TensorRT 11.1.0.106](https://developer.nvidia.com/downloads/compute/machine-learning/tensorrt/11.1.0/tars/TensorRT-Enterprise-11.1.0.106-Linux-x86_64-cuda-13.3-Release-external.tar.zst)
- [适用于 CUDA 12.9Linux x86_64 的 TensorRT 11.1.0.106](https://developer.nvidia.com/downloads/compute/machine-learning/tensorrt/11.1.0/tars/TensorRT-Enterprise-11.1.0.106-Linux-x86_64-cuda-12.9-Release-external.tar.zst)
- [适用于 CUDA 13.3Windows x86_64 的 TensorRT 11.1.0.106](https://developer.nvidia.com/downloads/compute/machine-learning/tensorrt/11.1.0/zip/TensorRT-Enterprise-11.1.0.106-Windows-amd64-cuda-13.3-Release-external.zip)
- [适用于 CUDA 12.9Windows x86_64 的 TensorRT 11.1.0.106](https://developer.nvidia.com/downloads/compute/machine-learning/tensorrt/11.1.0/zip/TensorRT-Enterprise-11.1.0.106-Windows-amd64-cuda-12.9-Release-external.zip)
**Example: Ubuntu 22.04 on x86-64 with cuda-13.3**
**示例:Ubuntu 22.04 x86-64cuda-13.3**
```bash
cd ~/Downloads
@@ -116,60 +123,60 @@ To build the TensorRT-OSS components, you will first need the following software
export TRT_LIBPATH=`pwd`/TensorRT-11.1.0.106/lib
```
**Example: Windows on x86-64 with cuda-12.9**
**示例:Windows x86-64cuda-12.9**
```powershell
Expand-Archive -Path TensorRT-Enterprise-11.1.0.106-Windows-amd64-cuda-12.9-Release-external.zip
$env:TRT_LIBPATH="$pwd\TensorRT-11.1.0.106\lib"
```
## Setting Up The Build Environment
## 配置构建环境
For Linux platforms, we recommend that you generate a docker container for building TensorRT OSS as described below. For native builds, please install the [prerequisite](#prerequisites) _System Packages_.
对于 Linux 平台,我们建议按照下文所述生成用于构建 TensorRT OSS 的 Docker 容器。若进行原生构建,请安装[先决条件](#prerequisites)中的 _System Packages_(系统软件包)。
1. #### Generate the TensorRT-OSS build container.
1. #### 生成 TensorRT-OSS 构建容器。
**Example: Ubuntu 24.04 on x86-64 with cuda-13.3 (default)**
**示例:x86-64 上的 Ubuntu 24.04,使用 cuda-13.3(默认)**
```bash
./docker/build.sh --file docker/ubuntu-24.04.Dockerfile --tag tensorrt-ubuntu24.04-cuda13.3
```
**Example: Rockylinux8 on x86-64 with cuda-13.3**
**示例:x86-64 上的 Rockylinux8,使用 cuda-13.3**
```bash
./docker/build.sh --file docker/rockylinux8.Dockerfile --tag tensorrt-rockylinux8-cuda13.3
```
**Example: Ubuntu 24.04 cross-compile for Jetson (aarch64) with cuda-13.3 (JetPack SDK)**
**示例:Ubuntu 24.04 交叉编译 Jetsonaarch64),使用 cuda-13.3JetPack SDK**
```bash
./docker/build.sh --file docker/ubuntu-cross-aarch64.Dockerfile --tag tensorrt-jetpack-cuda13.3
```
**Example: Ubuntu 24.04 on aarch64 with cuda-13.3**
**示例:aarch64 上的 Ubuntu 24.04,使用 cuda-13.3**
```bash
./docker/build.sh --file docker/ubuntu-24.04-aarch64.Dockerfile --tag tensorrt-aarch64-ubuntu24.04-cuda13.3
```
2. #### Launch the TensorRT-OSS build container.
**Example: Ubuntu 24.04 build container**
2. #### 启动 TensorRT-OSS 构建容器。
**示例:Ubuntu 24.04 构建容器**
```bash
./docker/launch.sh --tag tensorrt-ubuntu24.04-cuda13.3 --gpus all
```
> NOTE:
> <br> 1. Use the `--tag` corresponding to build container generated in Step 1.
> <br> 2. [NVIDIA Container Toolkit](#prerequisites) is required for GPU access (running TensorRT applications) inside the build container.
> <br> 3. `sudo` password for Ubuntu build containers is 'nvidia'.
> <br> 4. Specify port number using `--jupyter <port>` for launching Jupyter notebooks.
> <br> 5. Write permission to this folder is required as this folder will be mounted inside the docker container for uid:gid of 1000:1000.
> 注意:
> <br> 1. 使用与步骤 1 中生成的构建容器对应的 `--tag`。
> <br> 2. 在构建容器内访问 GPU(运行 TensorRT 应用程序)需要 [NVIDIA Container Toolkit](#prerequisites)
> <br> 3. Ubuntu 构建容器的 `sudo` 密码为 'nvidia'
> <br> 4. 使用 `--jupyter <port>` 指定端口号以启动 Jupyter notebooks
> <br> 5. 需要对此文件夹具有写入权限,因为该文件夹将以 uid:gid 1000:1000 挂载到 Docker 容器内。
## Building TensorRT-OSS
## 构建 TensorRT-OSS
- Generate Makefiles and build
- 生成 Makefile 并构建
**Example: Linux (x86-64) build with default cuda-13.3**
**示例:Linuxx86-64)默认 cuda-13.3 构建**
```bash
cd $TRT_OSSPATH
@@ -178,7 +185,7 @@ For Linux platforms, we recommend that you generate a docker container for build
make -j$(nproc)
```
**Example: Linux (aarch64) build with default cuda-13.3**
**示例:Linuxaarch64)默认 cuda-13.3 构建**
```bash
cd $TRT_OSSPATH
@@ -187,7 +194,7 @@ For Linux platforms, we recommend that you generate a docker container for build
make -j$(nproc)
```
**Example: Native build on Jetson Thor (aarch64) with cuda-13.3**
**示例:Jetson Thoraarch64)原生构建,使用 cuda-13.3**
```bash
cd $TRT_OSSPATH
@@ -196,9 +203,9 @@ For Linux platforms, we recommend that you generate a docker container for build
CC=/usr/bin/gcc make -j$(nproc)
```
> NOTE: C compiler must be explicitly specified via CC= for native aarch64 builds of protobuf.
> 注意:对于 protobuf 的原生 aarch64 构建,必须通过 CC= 显式指定 C 编译器。
**Example: Ubuntu 24.04 Cross-Compile for Jetson Thor (aarch64) with cuda-13.3 (JetPack)**
**示例:Ubuntu 24.04 交叉编译 Jetson Thoraarch64),使用 cuda-13.3JetPack**
```bash
cd $TRT_OSSPATH
@@ -207,7 +214,7 @@ For Linux platforms, we recommend that you generate a docker container for build
make -j$(nproc)
```
**Example: Ubuntu 24.04 Cross-Compile for DriveOS (aarch64) with cuda-13.3**
**示例:Ubuntu 24.04 交叉编译 DriveOSaarch64),使用 cuda-13.3**
```bash
cd $TRT_OSSPATH
@@ -216,7 +223,7 @@ For Linux platforms, we recommend that you generate a docker container for build
make -j$(nproc)
```
**Example: Native builds on Windows (x86) with cuda-13.3**
**示例:Windowsx86)原生构建,使用 cuda-13.3**
```bash
cd $TRT_OSSPATH
@@ -226,31 +233,31 @@ For Linux platforms, we recommend that you generate a docker container for build
msbuild TensorRT.sln /property:Configuration=Release -m:$env:NUMBER_OF_PROCESSORS
```
> NOTE: The default CUDA version used by CMake is 13.3. To override this, for example to 12.9, append `-DCUDA_VERSION=12.9` to the cmake command.
> 注意:CMake 默认使用的 CUDA 版本为 13.3。若要覆盖此设置(例如改为 12.9),请在 cmake 命令后追加 `-DCUDA_VERSION=12.9`
- Required CMake build arguments are:
- `TRT_LIB_DIR`: Path to the TensorRT installation directory containing libraries.
- `TRT_OUT_DIR`: Output directory where generated build artifacts will be copied.
- Optional CMake build arguments:
- `CMAKE_BUILD_TYPE`: Specify if binaries generated are for release or debug (contain debug symbols). Values consists of [`Release`] | `Debug`
- `CUDA_VERSION`: The version of CUDA to target, for example [`12.9.9`].
- `CUDNN_VERSION`: The version of cuDNN to target, for example [`8.9`].
- `PROTOBUF_VERSION`: The version of Protobuf to use, for example [`3.20.1`]. Note: Changing this will not configure CMake to use a system version of Protobuf, it will configure CMake to download and try building that version.
- `CMAKE_TOOLCHAIN_FILE`: The path to a toolchain file for cross compilation.
- `BUILD_PARSERS`: Specify if the parsers should be built, for example [`ON`] | `OFF`. If turned OFF, CMake will try to find precompiled versions of the parser libraries to use in compiling samples. First in `${TRT_LIB_DIR}`, then on the system. If the build type is Debug, then it will prefer debug builds of the libraries before release versions if available.
- `BUILD_PLUGINS`: Specify if the plugins should be built, for example [`ON`] | `OFF`. If turned OFF, CMake will try to find a precompiled version of the plugin library to use in compiling samples. First in `${TRT_LIB_DIR}`, then on the system. If the build type is Debug, then it will prefer debug builds of the libraries before release versions if available.
- `BUILD_SAMPLES`: Specify if the samples should be built, for example [`ON`] | `OFF`.
- `BUILD_SAFE_SAMPLES`: Specify if safety samples should be built, for example [`ON`] | `OFF`.
- `TRT_SAFETY_INFERENCE_ONLY`: Specify if only build the safety inference components, for example [`ON`] | `OFF`. If turned ON, all other components will be turned OFF except `BUILD_SAFE_SAMPLES`.
- `TRT_PLATFORM_ID`: Bare-metal build (unlike containerized cross-compilation). Currently supported options: `x86_64` (default).
- `TRT_BUILD_ENABLE_MULTIDEVICE`: Enable the multi-device sample (`sampleDistCollective`). Use `-DTRT_BUILD_ENABLE_MULTIDEVICE=ON` to build it; requires [NCCL](https://developer.nvidia.com/nccl/nccl-download) >= v2.19, < v3.0.
- `TRT_BUILD_TESTING` : Build gTests for samples. Requires [gtest](https://github.com/google/googletest) if available; otherwise fetches googletest at configure time.
- 必需的 CMake 构建参数:
- `TRT_LIB_DIR`:包含库的 TensorRT 安装目录路径。
- `TRT_OUT_DIR`:生成的构建产物将被复制到的输出目录。
- 可选的 CMake 构建参数:
- `CMAKE_BUILD_TYPE`:指定生成的二进制文件用于 release 还是 debug(包含调试符号)。取值包括 [`Release`] | `Debug`
- `CUDA_VERSION`:目标 CUDA 版本,例如 [`12.9.9`]
- `CUDNN_VERSION`:目标 cuDNN 版本,例如 [`8.9`]
- `PROTOBUF_VERSION`:要使用的 Protobuf 版本,例如 [`3.20.1`]。注意:更改此项不会配置 CMake 使用系统版 Protobuf,而是会配置 CMake 下载并尝试构建该版本。
- `CMAKE_TOOLCHAIN_FILE`:用于交叉编译的工具链文件路径。
- `BUILD_PARSERS`:指定是否构建 parsers,例如 [`ON`] | `OFF`。若设为 OFFCMake 将尝试查找预编译的 parser 库以用于编译 samples。首先在 `${TRT_LIB_DIR}` 中查找,然后在系统中查找。若构建类型为 Debug,则在可用时优先使用库的 debug 构建版本,而非 release 版本。
- `BUILD_PLUGINS`:指定是否构建 plugins,例如 [`ON`] | `OFF`。若设为 OFFCMake 将尝试查找预编译的 plugin 库以用于编译 samples。首先在 `${TRT_LIB_DIR}` 中查找,然后在系统中查找。若构建类型为 Debug,则在可用时优先使用库的 debug 构建版本,而非 release 版本。
- `BUILD_SAMPLES`:指定是否构建 samples,例如 [`ON`] | `OFF`
- `BUILD_SAFE_SAMPLES`:指定是否构建 safety samples,例如 [`ON`] | `OFF`
- `TRT_SAFETY_INFERENCE_ONLY`:指定是否仅构建 safety inference 组件,例如 [`ON`] | `OFF`。若设为 ON,除 `BUILD_SAFE_SAMPLES` 外,所有其他组件都将设为 OFF。
- `TRT_PLATFORM_ID`:裸机构建(与容器化交叉编译不同)。当前支持的选项:`x86_64`(默认)。
- `TRT_BUILD_ENABLE_MULTIDEVICE`:启用多设备 sample`sampleDistCollective`)。使用 `-DTRT_BUILD_ENABLE_MULTIDEVICE=ON` 进行构建;需要 [NCCL](https://developer.nvidia.com/nccl/nccl-download) >= v2.19, < v3.0
- `TRT_BUILD_TESTING` :为 samples 构建 gTests。需要 [gtest](https://github.com/google/googletest)(若可用);否则在配置时获取 googletest。
## Building TensorRT DriveOS Samples
## 构建 TensorRT DriveOS Samples
- Generate Makefiles and build
- 生成 Makefile 并构建
**Example: Cross-Compile for DOS7 Linux (aarch64)**
**示例:交叉编译 DOS7 Linuxaarch64**
```bash
cd $TRT_OSSPATH
@@ -259,7 +266,7 @@ For Linux platforms, we recommend that you generate a docker container for build
make -j$(nproc)
```
**Example: Cross-Compile for DOS6.5 Linux (aarch64)**
**示例:交叉编译 DOS6.5 Linuxaarch64**
```bash
cd $TRT_OSSPATH
@@ -268,7 +275,7 @@ For Linux platforms, we recommend that you generate a docker container for build
make -j$(nproc)
```
**Example: Native build for DOS6.5 and DOS7 Linux (aarch64)**
**示例:DOS6.5 DOS7 Linuxaarch64)原生构建**
```bash
cd $TRT_OSSPATH
@@ -277,7 +284,7 @@ For Linux platforms, we recommend that you generate a docker container for build
make -j$(nproc)
```
**Example: Cross-Compile for DOS6.5 QNX (aarch64)**
**示例:交叉编译 DOS6.5 QNXaarch64**
```bash
cd $TRT_OSSPATH
@@ -293,16 +300,16 @@ For Linux platforms, we recommend that you generate a docker container for build
make -j$(nproc)
```
> NOTE: Set `QNX_BASE` to your QNX toolchain installation path.
> If your CUDA version is not the same as in the example, set `CUDA_VERSION` (for examples that use it in multiple places) or add `-DCUDA_VERSION=<version>` to the cmake command.
> 注意:将 `QNX_BASE` 设置为你的 QNX 工具链安装路径。
> 若你的 CUDA 版本与示例不同,请设置 `CUDA_VERSION`(在示例中多处使用时),或在 cmake 命令中添加 `-DCUDA_VERSION=<version>`
**Example: Cross-Compile for DOS6.5 QNX Safety (aarch64)**
**示例:为 DOS6.5 QNX Safetyaarch64)交叉编译**
```bash
cd $TRT_OSSPATH
mkdir -p build && cd build
export CUDA_VERSION=11.4
export QNX_BASE=/drive/toolchains/qnx_toolchain # Set to your QNX toolchain installation path
export QNX_BASE=/drive/toolchains/qnx_toolchain # 设置为你的 QNX 工具链安装路径
export QNX_HOST=$QNX_BASE/host/linux/x86_64/
export QNX_TARGET=$QNX_BASE/target/qnx7/
export PATH=$PATH:$QNX_HOST/usr/bin
@@ -312,10 +319,10 @@ For Linux platforms, we recommend that you generate a docker container for build
make -j$(nproc)
```
> NOTE: Set `QNX_BASE` to your QNX toolchain installation path.
> If your CUDA version is not the same as in the example, set `CUDA_VERSION` (for examples that use it in multiple places) or add `-DCUDA_VERSION=<version>` to the cmake command.
> 注意:将 `QNX_BASE` 设置为你的 QNX 工具链安装路径。
> 若你的 CUDA 版本与示例不同,请设置 `CUDA_VERSION`(在示例中多处使用时),或在 cmake 命令中添加 `-DCUDA_VERSION=<version>`
**Example: Cross-Compile for DOS7 QNX (aarch64)**
**示例:为 DOS7 QNXaarch64)交叉编译**
```bash
cd $TRT_OSSPATH
@@ -323,7 +330,7 @@ For Linux platforms, we recommend that you generate a docker container for build
export CUDA_VERSION=13.3
export CUDA=cuda-$CUDA_VERSION
export CUDA_ROOT=/usr/local/cuda-safe-$CUDA_VERSION
export QNX_BASE=/drive/toolchains/qnx_toolchain # Set to your QNX toolchain installation path
export QNX_BASE=/drive/toolchains/qnx_toolchain # 设置为你的 QNX 工具链安装路径
export QNX_HOST=$QNX_BASE/host/linux/x86_64/
export QNX_TARGET=$QNX_BASE/target/qnx/
export PATH=$PATH:$QNX_HOST/usr/bin
@@ -331,21 +338,21 @@ For Linux platforms, we recommend that you generate a docker container for build
make -j$(nproc)
```
> NOTE: Set `QNX_BASE` to your QNX toolchain installation path.
> If your CUDA version is not the same as in the example, set `CUDA_VERSION` (for examples that use it in multiple places) or add `-DCUDA_VERSION=<version>` to the cmake command.
> 注意:将 `QNX_BASE` 设置为你的 QNX 工具链安装路径。
> 若你的 CUDA 版本与示例不同,请设置 `CUDA_VERSION`(在示例中多处使用时),或在 cmake 命令中添加 `-DCUDA_VERSION=<version>`
# References
# 参考资料
## TensorRT Resources
## TensorRT 资源
- [TensorRT Developer Home](https://developer.nvidia.com/tensorrt)
- [TensorRT QuickStart Guide](https://docs.nvidia.com/deeplearning/tensorrt/quick-start-guide/index.html)
- [TensorRT Developer Guide](https://docs.nvidia.com/deeplearning/tensorrt/developer-guide/index.html)
- [TensorRT Sample Support Guide](https://docs.nvidia.com/deeplearning/tensorrt/sample-support-guide/index.html)
- [TensorRT ONNX Tools](https://docs.nvidia.com/deeplearning/tensorrt/index.html#tools)
- [TensorRT Discussion Forums](https://devtalk.nvidia.com/default/board/304/tensorrt/)
- [TensorRT Release Notes](https://docs.nvidia.com/deeplearning/tensorrt/release-notes/index.html)
- [TensorRT 开发者主页](https://developer.nvidia.com/tensorrt)
- [TensorRT 快速入门指南](https://docs.nvidia.com/deeplearning/tensorrt/quick-start-guide/index.html)
- [TensorRT 开发者指南](https://docs.nvidia.com/deeplearning/tensorrt/developer-guide/index.html)
- [TensorRT 示例支持指南](https://docs.nvidia.com/deeplearning/tensorrt/sample-support-guide/index.html)
- [TensorRT ONNX 工具](https://docs.nvidia.com/deeplearning/tensorrt/index.html#tools)
- [TensorRT 讨论论坛](https://devtalk.nvidia.com/default/board/304/tensorrt/)
- [TensorRT 发布说明](https://docs.nvidia.com/deeplearning/tensorrt/release-notes/index.html)
## Known Issues
## 已知问题
- Please refer to [TensorRT Release Notes](https://docs.nvidia.com/deeplearning/tensorrt/release-notes)
- 请参阅 [TensorRT 发布说明](https://docs.nvidia.com/deeplearning/tensorrt/release-notes)