Class TensorRtTensor
- Namespace
- JYPPX.TensorRtSharp
- Assembly
- JYPPX.TensorRtSharp.dll
Represents a TensorRT network tensor handle. 表示一个 TensorRT 网络张量句柄。
public sealed class TensorRtTensor : IDisposable
- Inheritance
-
TensorRtTensor
- Implements
- Inherited Members
Properties
AllowedFormats
Gets or sets the allowed tensor memory formats bitmask. 获取或设置允许的张量内存格式位掩码。
public TensorRtTensorFormats AllowedFormats { get; set; }
Property Value
BroadcastAcrossBatch
Gets or sets TensorRT's legacy broadcast-across-batch flag for this tensor. 获取或设置 TensorRT 针对此张量的旧版 broadcast-across-batch 标志。
public bool BroadcastAcrossBatch { get; set; }
Property Value
Remarks
This flag is deprecated in modern explicit-batch workflows, but it is still exposed for version coverage and model compatibility. 该标志在现代 explicit-batch 流程中已不推荐使用;这里保留它是为了版本覆盖和模型兼容。
DataType
Gets or sets the tensor element data type. 获取或设置张量元素数据类型。
public TensorRtDataType DataType { get; set; }
Property Value
DynamicRangeMaximum
Gets the maximum dynamic range value currently reported by TensorRT. 获取 TensorRT 当前报告的 dynamic range 最大值。
public float DynamicRangeMaximum { get; }
Property Value
DynamicRangeMinimum
Gets the minimum dynamic range value currently reported by TensorRT. 获取 TensorRT 当前报告的 dynamic range 最小值。
public float DynamicRangeMinimum { get; }
Property Value
IsDynamicRangeSet
Gets whether an explicit dynamic range is set on this tensor. 获取此张量是否已经设置显式 dynamic range。
public bool IsDynamicRangeSet { get; }
Property Value
Remarks
TensorRT 8 and 10 expose this query. TensorRT 11 removed the corresponding public query, so this property throws BridgeProbeException for TensorRT 11. TensorRT 8 和 10 提供该查询;TensorRT 11 已移除对应公开查询,因此该属性在 TensorRT 11 下会抛出 BridgeProbeException。
IsExecutionTensor
Gets whether TensorRT reports this network tensor as an execution tensor. 获取 TensorRT 是否将当前网络张量识别为 execution tensor。
public bool IsExecutionTensor { get; }
Property Value
Remarks
This query helps diagnose dynamic-shape graphs where a tensor may participate only in shape calculation. 该查询可用于诊断动态 shape 图中张量是否只参与 shape 计算。
IsNetworkInput
Gets whether TensorRT reports this tensor as a network input tensor. 获取 TensorRT 是否将当前张量报告为 network input tensor。
public bool IsNetworkInput { get; }
Property Value
Remarks
This query is useful when validating direct network construction and layer wiring. 该查询适合验证直接构图和 layer 连接关系。
IsNetworkOutput
Gets whether TensorRT reports this tensor as a network output tensor. 获取 TensorRT 是否将当前张量报告为 network output tensor。
public bool IsNetworkOutput { get; }
Property Value
Remarks
Marked network outputs should report true after the network output has been configured.
完成输出标记后,network output 通常应返回 true。
IsOwnerLifetimeBound
Gets whether this borrowed tensor wrapper keeps its native owner alive. 获取此 borrowed tensor 包装是否会保持其 native owner 存活。
public bool IsOwnerLifetimeBound { get; }
Property Value
IsShapeTensor
Gets whether TensorRT reports this network tensor as a shape tensor. 获取 TensorRT 是否将当前网络张量识别为 shape tensor。
public bool IsShapeTensor { get; }
Property Value
Remarks
The result is most reliable after network construction is complete. 该结果在网络构建完成后最可靠。
Line
Gets the TensorRT adapter line that owns this tensor. 获取拥有此张量的 TensorRT 适配线。
public TensorRtApiLine Line { get; }
Property Value
Location
Gets or sets whether the tensor is expected in device or host memory. 获取或设置张量应位于设备内存还是主机内存。
public TensorRtTensorLocation Location { get; set; }
Property Value
Name
Gets or sets the tensor name. 获取或设置张量名称。
public string Name { get; set; }
Property Value
Shape
Gets or sets the tensor shape using TensorRT's classic 32-bit dimensions. 使用 TensorRT 经典 32 位维度获取或设置张量形状。
public TensorRtDims Shape { get; set; }
Property Value
Shape64
Gets the TensorRT 11 tensor shape with 64-bit dimension extents. 获取 TensorRT 11 张量形状,并保留 64 位维度 extent。
public TensorRtDims64 Shape64 { get; }
Property Value
Remarks
This API is available only for the TensorRT 11 adapter line. It keeps unknown-rank shapes and large extents intact. 该 API 仅适用于 TensorRT 11 适配线;它会保留 unknown-rank shape 和大维度 extent。
Methods
ClearDimensionName(int)
Clears the symbolic name assigned to one tensor dimension. 清除指定张量维度的符号名称。
public void ClearDimensionName(int dimensionIndex)
Parameters
dimensionIndexintThe zero-based tensor dimension index. 从零开始的张量维度索引。
Dispose()
Releases the managed wrapper for the TensorRT tensor handle. 释放 TensorRT 张量句柄的托管包装。
public void Dispose()
GetDimensionExtent64(int)
Gets one TensorRT 11 tensor dimension extent as a 64-bit value. 以 64 位整数获取 TensorRT 11 张量的单个维度 extent。
public long GetDimensionExtent64(int dimensionIndex)
Parameters
dimensionIndexintThe zero-based dimension index. 从零开始的维度索引。
Returns
- long
The dimension extent reported by TensorRT. TensorRT 报告的维度 extent。
GetDimensionName(int)
Gets the symbolic name assigned to one tensor dimension. 获取指定张量维度的符号名称。
public string GetDimensionName(int dimensionIndex)
Parameters
dimensionIndexintThe zero-based tensor dimension index. 从零开始的张量维度索引。
Returns
- string
The symbolic dimension name, or an empty string when no name is assigned. 返回维度符号名;未设置时返回空字符串。
ResetDynamicRange()
Clears the explicit dynamic range on the tensor. 清除张量上的显式 dynamic range。
public void ResetDynamicRange()
SetDimensionName(int, string)
Assigns a symbolic name to one tensor dimension. 为指定张量维度设置符号名称。
public void SetDimensionName(int dimensionIndex, string name)
Parameters
dimensionIndexintThe zero-based tensor dimension index. 从零开始的张量维度索引。
namestringThe symbolic dimension name. 维度符号名称。
Remarks
Dimension names can express runtime equality constraints and improve diagnostic readability in dynamic-shape networks. 维度名称可表达运行时维度相等约束,并提升动态 shape 网络的诊断可读性。
SetDynamicRange(float, float)
Sets an explicit dynamic range on the tensor. 为张量设置显式 dynamic range。
public void SetDynamicRange(float minimum, float maximum)