Class TensorRtOnnxParser
- Namespace
- JYPPX.TensorRtSharp
- Assembly
- JYPPX.TensorRtSharp.dll
Parses ONNX models into a TensorRT network definition. 将 ONNX 模型解析到 TensorRT network definition。
public sealed class TensorRtOnnxParser : IDisposable
- Inheritance
-
TensorRtOnnxParser
- Implements
- Inherited Members
Constructors
TensorRtOnnxParser(TensorRtLogger, TensorRtNetworkDefinition)
Creates an ONNX parser for the specified TensorRT logger and network. 使用指定的 TensorRT logger 和 network 创建 ONNX parser。
public TensorRtOnnxParser(TensorRtLogger logger, TensorRtNetworkDefinition network)
Parameters
loggerTensorRtLoggerThe TensorRT logger used by the parser. Parser 使用的 TensorRT logger。
networkTensorRtNetworkDefinitionThe target TensorRT network definition. 目标 TensorRT network definition。
Properties
ErrorCount
Gets the number of parser errors currently reported by TensorRT. 获取 TensorRT 当前报告的 parser 错误数量。
public int ErrorCount { get; }
Property Value
Flags
Gets or sets the ONNX parser flag bitmask. 获取或设置 ONNX parser 标志位掩码。
public TensorRtOnnxParserFlags Flags { get; set; }
Property Value
Line
Gets the TensorRT API line used by this parser. 获取当前 parser 使用的 TensorRT API 版本线。
public TensorRtApiLine Line { get; }
Property Value
Methods
CheckModelSupport(byte[], string?)
Checks whether TensorRT reports support for the serialized ONNX model. 检查 TensorRT 是否报告支持指定的已序列化 ONNX 模型。
public TensorRtOnnxModelSupportReport CheckModelSupport(byte[] modelData, string? modelPath = null)
Parameters
modelDatabyte[]Serialized ONNX model bytes. 已序列化的 ONNX 模型字节。
modelPathstringOptional model path used by TensorRT diagnostics. TensorRT 诊断信息使用的可选模型路径。
Returns
- TensorRtOnnxModelSupportReport
A support report containing the full-model result and parser subgraphs. 包含完整模型结果和 parser 子图的支持性报告。
ClearErrors()
Clears parser errors stored by TensorRT. 清理 TensorRT 保存的 parser 错误。
public void ClearErrors()
ClearFlag(TensorRtOnnxParserFlag)
Clears a single ONNX parser flag. 清除单个 ONNX parser 标志。
public void ClearFlag(TensorRtOnnxParserFlag flag)
Parameters
flagTensorRtOnnxParserFlagThe parser flag to clear. 要清除的 parser 标志。
Dispose()
Releases the native ONNX parser handle. 释放原生 ONNX parser 句柄。
public void Dispose()
GetDiagnostic(int)
Gets one detailed parser diagnostic by index. 按索引获取一条详细解析器诊断信息。
public TensorRtOnnxParserDiagnostic GetDiagnostic(int index)
Parameters
indexintZero-based parser error index. 从零开始的解析器错误索引。
Returns
- TensorRtOnnxParserDiagnostic
The detailed parser diagnostic. 详细解析器诊断信息。
Remarks
This path reads variable-length strings from the native bridge and avoids truncating long parser messages. 该路径从原生桥接读取可变长度字符串,可避免长解析错误消息被固定结构体截断。
GetDiagnosticSummary()
Builds a readable parser diagnostic summary for logs and deployment troubleshooting. 为日志和部署排障生成可读的解析器诊断摘要。
public string GetDiagnosticSummary()
Returns
- string
A parser diagnostic summary string. 解析器诊断摘要字符串。
GetDiagnostics()
Gets all detailed parser diagnostics currently reported by TensorRT. 获取 TensorRT 当前报告的全部详细解析器诊断信息。
public IReadOnlyList<TensorRtOnnxParserDiagnostic> GetDiagnostics()
Returns
- IReadOnlyList<TensorRtOnnxParserDiagnostic>
The detailed parser diagnostics. 详细解析器诊断信息列表。
GetError(int)
Gets one parser error by index. 按索引获取一个 parser 错误。
public TensorRtParserErrorInfo GetError(int index)
Parameters
indexintZero-based parser error index. 从零开始的 parser 错误索引。
Returns
- TensorRtParserErrorInfo
The parser error information. Parser 错误信息。
GetErrorSummary()
Builds a readable parser error summary for logs and diagnostics. 为日志和诊断生成可读的 parser 错误摘要。
public string GetErrorSummary()
Returns
- string
A parser error summary string. Parser 错误摘要字符串。
GetErrors()
Gets all parser errors currently reported by TensorRT. 获取 TensorRT 当前报告的全部 parser 错误。
public IReadOnlyList<TensorRtParserErrorInfo> GetErrors()
Returns
- IReadOnlyList<TensorRtParserErrorInfo>
The parser error list. Parser 错误列表。
GetFlag(TensorRtOnnxParserFlag)
Gets a single ONNX parser flag. 获取单个 ONNX parser 标志。
public bool GetFlag(TensorRtOnnxParserFlag flag)
Parameters
flagTensorRtOnnxParserFlagThe parser flag to query. 要查询的 parser 标志。
Returns
- bool
truewhen the flag is enabled. 标志启用时返回true。
GetUsedVCPluginLibraries()
Gets VC plugin libraries used by the most recent ONNX parser operation. 获取最近一次 ONNX parser 操作使用的 VC plugin library 列表。
public IReadOnlyList<string> GetUsedVCPluginLibraries()
Returns
- IReadOnlyList<string>
Parser-owned library paths copied into managed strings. 已复制到托管字符串中的 parser library 路径。
LayerOutputTensorExists(string, long)
Returns whether a parsed ONNX layer output tensor exists without exposing the native tensor pointer. 判断已解析 ONNX layer 的输出 tensor 是否存在,同时不暴露原生 tensor 指针。
public bool LayerOutputTensorExists(string layerName, long outputIndex = 0)
Parameters
layerNamestringThe ONNX layer name to query. 要查询的 ONNX layer 名称。
outputIndexlongZero-based output index. 从零开始的输出索引。
Returns
Parse(byte[], string?)
Parses ONNX model bytes into the target network. 将 ONNX 模型字节解析到目标 network。
public bool Parse(byte[] modelData, string? modelPath = null)
Parameters
modelDatabyte[]Serialized ONNX model bytes. 已序列化的 ONNX 模型字节。
modelPathstringOptional model path used by TensorRT diagnostics. TensorRT 诊断信息使用的可选模型路径。
Returns
- bool
truewhen parsing succeeds. 解析成功时返回true。
ParseFromFile(string, int)
Parses an ONNX model from a file path into the target network. 从文件路径解析 ONNX 模型到目标 network。
public bool ParseFromFile(string filePath, int verbosity = 1)
Parameters
filePathstringThe ONNX model path. ONNX 模型路径。
verbosityintTensorRT parser verbosity level. TensorRT parser 日志详细级别。
Returns
- bool
truewhen parsing succeeds. 解析成功时返回true。
SetFlag(TensorRtOnnxParserFlag)
Enables a single ONNX parser flag. 启用单个 ONNX parser 标志。
public void SetFlag(TensorRtOnnxParserFlag flag)
Parameters
flagTensorRtOnnxParserFlagThe parser flag to enable. 要启用的 parser 标志。
SupportsOperator(string)
Returns whether the selected TensorRT parser reports support for an ONNX operator. 返回当前 TensorRT parser 是否报告支持指定 ONNX operator。
public bool SupportsOperator(string operatorName)
Parameters
operatorNamestringThe ONNX operator name, for example
Identity. ONNX operator 名称,例如Identity。
Returns
- bool
truewhen TensorRT reports support for the operator. TensorRT 报告支持该 operator 时返回true。