TensorRT模型部署实战,英伟达平台,C++ 和python对比(包含源码)

本文介绍了可以使用C ++ API执行的TensorRT用户目标和任务。 进一步的细节在 Samples 部分提供,并在适当的情况下链接到下面。

假设您从一个已经训练好的模型开始。 本章将介绍使用TensorRT的以下必要步骤:

从模型中创建 TensorRT 网络定义

  • 调用 TensorRT 构建器以从网络创建优化的运行时引擎
  • 序列化和反序列化引擎,以便在运行时快速重新创建
  • 喂入数据为引擎提供执行推理

C++ API vs Python API

从本质上讲,C++ API和 Python API在支持您的需求方面应该完全相同。 C++ API应该用于任何性能关键场景,以及安全性很重要的场合,例如汽车行业。

Python API的主要好处是数据预处理和后处理易于使用,因为您可以使用各种库,如 NumPy 和 SciPy。 有关 Python API 的更多信息,请参阅使用Python部署TensorRT.

1. C++实例化TensorRT对象

要运行推理,需要使用 IExecutionContext 对象。 要创建 IExecutionContext 类型的对象,首先需要创建 ICudaEngine 类型的对象(引擎)。

可以通过以下两种方式之一创建引擎:

通过用户模型的网络定义。 在这种情况下,可以选择将引擎序列化并保存以供以后使用。

通过从磁盘读取序列化引擎。 在这种情况下&#x

猜你喜欢

转载自blog.csdn.net/Charmve/article/details/128961895