TensorRT 10.8.0
|
一个用于将 ONNX 模型解析为 TensorRT 网络定义的对象 更多...
#include <NvOnnxParser.h>
公共成员函数 | |
virtual bool | parse (void const *serialized_onnx_model, size_t serialized_onnx_model_size, const char *model_path=nullptr) noexcept=0 |
将序列化的 ONNX 模型解析到 TensorRT 网络中。此方法的诊断能力非常有限。如果由于任何原因(例如,不支持的 IR 版本、不支持的 opset 等)解析序列化模型失败,用户有责任拦截并报告错误。要获得更好的诊断信息,请使用下面的 parseFromFile 方法。更多... | |
virtual bool | parseFromFile (const char *onnxModelFile, int verbosity) noexcept=0 |
解析 ONNX 模型文件,它可以是二进制 protobuf 或文本 ONNX 模型,内部调用 parse 方法。更多... | |
virtual TRT_DEPRECATED bool | supportsModel (void const *serialized_onnx_model, size_t serialized_onnx_model_size, SubGraphCollection_t &sub_graph_collection, const char *model_path=nullptr) noexcept=0 |
检查 TensorRT 是否支持特定的 ONNX 模型。如果函数返回 True,则可以继续引擎构建,而无需调用 parse 或 parseFromFile 。更多... | |
virtual bool | parseWithWeightDescriptors (void const *serialized_onnx_model, size_t serialized_onnx_model_size) noexcept=0 |
将序列化的 ONNX 模型解析到 TensorRT 网络中,并考虑用户提供的权重。更多... | |
virtual bool | supportsOperator (const char *op_name) const noexcept=0 |
返回解析器是否可能支持指定的运算符。更多... | |
virtual int | getNbErrors () const noexcept=0 |
获取先前调用 parse 期间发生的错误数量。更多... | |
virtual IParserError const * | getError (int index) const noexcept=0 |
获取先前调用 parse 期间发生的错误。更多... | |
virtual void | clearErrors () noexcept=0 |
清除先前调用 parse 产生的错误。更多... | |
virtual | ~IParser () noexcept=default |
virtual char const *const * | getUsedVCPluginLibraries (int64_t &nbPluginLibs) const noexcept=0 |
查询版本兼容引擎中解析器使用的操作所需的插件库。更多... | |
virtual void | setFlags (OnnxParserFlags onnxParserFlags) noexcept=0 |
设置解析器标志。更多... | |
virtual OnnxParserFlags | getFlags () const noexcept=0 |
获取解析器标志。默认为 0。更多... | |
virtual void | clearFlag (OnnxParserFlag onnxParserFlag) noexcept=0 |
清除解析器标志。更多... | |
virtual void | setFlag (OnnxParserFlag onnxParserFlag) noexcept=0 |
设置单个解析器标志。更多... | |
virtual bool | getFlag (OnnxParserFlag onnxParserFlag) const noexcept=0 |
如果设置了解析器标志,则返回 true。更多... | |
virtual nvinfer1::ITensor const * | getLayerOutputTensor (char const *name, int64_t i) noexcept=0 |
返回 ONNX 层 “name” 的第 i 个输出 ITensor 对象。更多... | |
virtual bool | supportsModelV2 (void const *serializedOnnxModel, size_t serializedOnnxModelSize, char const *modelPath=nullptr) noexcept=0 |
检查 TensorRT 是否支持特定的 ONNX 模型。如果函数返回 True,则可以继续引擎构建,而无需调用 parse 或 parseFromFile 。结果可以通过 getNbSubgraphs 、isSubgraphSupported 、getSubgraphNodes 查询。更多... | |
virtual int64_t | getNbSubgraphs () noexcept=0 |
获取子图的数量。在调用 supportsModelV2 之前调用此函数会导致未定义的行为。更多... | |
virtual bool | isSubgraphSupported (int64_t const index) noexcept=0 |
返回是否支持子图。在调用 supportsModelV2 之前调用此函数会导致未定义的行为。更多... | |
virtual int64_t * | getSubgraphNodes (int64_t const index, int64_t &subgraphLength) noexcept=0 |
获取指定子图的节点。在调用 supportsModelV2 之前调用此函数会导致未定义的行为。更多... | |
一个用于将 ONNX 模型解析为 TensorRT 网络定义的对象
|
virtualdefaultnoexcept |
|
pure virtualnoexcept |
清除先前调用 parse
产生的错误。
|
pure virtualnoexcept |
|
pure virtualnoexcept |
获取先前调用 parse
期间发生的错误。
|
pure virtualnoexcept |
|
pure virtualnoexcept |
|
pure virtualnoexcept |
返回 ONNX 层 “name” 的第 i 个输出 ITensor 对象。
返回 ONNX 层 “name” 的第 i 个输出 ITensor 对象。如果找不到 “name” 或 i 超出范围,则返回 nullptr。如果多个节点共享相同的名称,则此函数将返回 ONNX 图中第一个节点实例的输出张量。
name | ONNX 层的名称。 |
i | 输出的索引。i 必须在范围 [0, layer.num_outputs) 内。 |
|
pure virtualnoexcept |
获取先前调用 parse
期间发生的错误数量。
|
pure virtualnoexcept |
获取子图的数量。在调用 supportsModelV2
之前调用此函数会导致未定义的行为。
|
pure virtualnoexcept |
获取指定子图的节点。在调用 supportsModelV2
之前调用此函数会导致未定义的行为。
index | 子图的索引。 |
subgraphLength | 以引用的形式返回子图的长度。 |
|
pure virtualnoexcept |
查询版本兼容引擎中解析器使用的操作所需的插件库。
这提供了文件系统上插件库的列表,这些插件库是实现已解析网络中操作所必需的。如果您正在使用此网络构建版本兼容引擎,请将此列表提供给 IBuilderConfig::setPluginsToSerialize 以将这些插件与版本兼容引擎一起序列化,或者,如果您想将这些插件库在引擎外部发布,请确保在反序列化相应的引擎之前,使用 IPluginRegistry::loadLibrary 加载这些库。
[out] | nbPluginLibs | 返回数组中插件库的数量,如果发生错误,则返回 -1。 |
nbPluginLibs
C 字符串数组,描述文件系统上的插件库路径(如果 nbPluginLibs > 0),否则为 nullptr。此数组由 IParser 拥有,并且数组中的指针仅在下次调用 parse()、supportsModel()、parseFromFile() 或 parseWithWeightDescriptors() 之前有效。
|
pure virtualnoexcept |
返回是否支持子图。在调用 supportsModelV2
之前调用此函数会导致未定义的行为。
index | 子图的索引。 |
|
pure virtualnoexcept |
将序列化的 ONNX 模型解析到 TensorRT 网络中。此方法的诊断能力非常有限。如果由于任何原因(例如,不支持的 IR 版本、不支持的 opset 等)解析序列化模型失败,用户有责任拦截并报告错误。要获得更好的诊断信息,请使用下面的 parseFromFile 方法。
serialized_onnx_model | 指向序列化的 ONNX 模型的指针 |
serialized_onnx_model_size | 序列化的 ONNX 模型的大小(以字节为单位) |
model_path | 模型文件的绝对路径,用于在需要时加载外部权重 |
|
pure virtualnoexcept |
解析 ONNX 模型文件,它可以是二进制 protobuf 或文本 ONNX 模型,内部调用 parse 方法。
onnxModelFile | name |
verbosity | 级别 |
|
pure virtualnoexcept |
将序列化的 ONNX 模型解析到 TensorRT 网络中,并考虑用户提供的权重。
serialized_onnx_model | 指向序列化的 ONNX 模型的指针 |
serialized_onnx_model_size | 序列化的 ONNX 模型的大小(以字节为单位) |
|
pure virtualnoexcept |
|
pure virtualnoexcept |
设置解析器标志。
标志在 OnnxParserFlag 枚举中列出。
OnnxParserFlag | 解析 ONNX 模型时使用的标志。 |
|
pure virtualnoexcept |
检查 TensorRT 是否支持特定的 ONNX 模型。如果函数返回 True,则可以继续引擎构建,而无需调用 parse
或 parseFromFile
。
[已弃用] 在 TensorRT 10.1 中已弃用。请参阅 supportsModelV2。
serialized_onnx_model | 指向序列化的 ONNX 模型的指针 |
serialized_onnx_model_size | 序列化的 ONNX 模型的大小(以字节为单位) |
sub_graph_collection | 用于保存受支持子图的容器 |
model_path | 模型文件的绝对路径,用于在需要时加载外部权重 |
|
pure virtualnoexcept |
检查 TensorRT 是否支持特定的 ONNX 模型。如果函数返回 True,则可以继续引擎构建,而无需调用 parse
或 parseFromFile
。结果可以通过 getNbSubgraphs
、isSubgraphSupported
、getSubgraphNodes
查询。
serializedOnnxModel | 指向序列化的 ONNX 模型的指针 |
serializedOnnxModelSize | 序列化的 ONNX 模型的大小(以字节为单位) |
modelPath | 模型文件的绝对路径,用于在需要时加载外部权重 |
|
pure virtualnoexcept |
返回解析器是否可能支持指定的运算符。
请注意,结果为 true 并不能保证在所有情况下都支持该运算符(即,此函数可能会返回误报)。
op_name | 要检查是否支持的 ONNX 运算符的名称 |
版权所有 © 2024 NVIDIA Corporation
隐私政策 | 管理我的隐私 | 请勿出售或分享我的数据 | 服务条款 | 无障碍功能 | 公司政策 | 产品安全 | 联系方式