TensorRT 10.8.0
|
TensorRT API 版本 1 的命名空间。 更多...
命名空间 | |
namespace | anonymous_namespace{NvInfer.h} |
namespace | anonymous_namespace{NvInferRuntime.h} |
namespace | impl |
namespace | plugin |
namespace | safe |
namespace | serialize |
namespace | v_1_0 |
为在其他接口中使用而预先声明 IErrorRecorder。 | |
namespace | v_2_0 |
类 | |
class | Dims2 |
二维数据的描述符。 更多... | |
class | Dims3 |
三维数据的描述符。 更多... | |
class | Dims4 |
四维数据的描述符。 更多... | |
class | Dims64 |
class | DimsExprs |
与 Dims 类类似,但维度使用表达式而不是常量。 更多... | |
class | DimsHW |
二维空间数据的描述符。 更多... | |
struct | DynamicPluginTensorDesc |
概述插件可能看到的输入或输出张量。 更多... | |
class | IActivationLayer |
网络定义中的激活层。 更多... | |
class | IAlgorithm |
描述层执行的变体。算法由 IAlgorithmVariant 和每个输入和输出的 IAlgorithmIOInfo 表示。可以使用 AlgorithmSelector::selectAlgorithms() 选择或重现算法。 更多... | |
class | IAlgorithmContext |
描述上下文和需求,这些上下文和需求可以由一个或多个 IAlgorithm 实例满足。 更多... | |
class | IAlgorithmIOInfo |
携带关于算法输入或输出的信息。所有输入和输出的 IAlgorithmIOInfo 以及 IAlgorithmVariant 表示算法的变体,并可用于使用 IAlgorithmSelector::selectAlgorithms() 选择或重现算法。 更多... | |
class | IAlgorithmVariant |
提供唯一的 128 位标识符,该标识符与输入和输出信息一起表示算法的变体,并可用于使用 IAlgorithmSelector::selectAlgorithms() 选择或重现算法 更多... | |
class | IAssertionLayer |
网络中的断言层。 更多... | |
class | IBuilder |
从网络定义构建引擎。 更多... | |
class | IBuilderConfig |
保存用于配置构建器以生成引擎的属性。 更多... | |
class | ICastLayer |
网络中的类型转换层。 更多... | |
class | IConcatenationLayer |
网络定义中的连接层。 更多... | |
class | IConditionLayer |
此层表示 IIfConditional 的条件输入。 更多... | |
class | IConstantLayer |
表示常量值的层。 更多... | |
class | IConvolutionLayer |
网络定义中的卷积层。 更多... | |
class | ICudaEngine |
用于在构建的网络上执行推理的引擎,具有功能上不安全的功能。 更多... | |
class | ICumulativeLayer |
表示跨张量的累积操作的层。 更多... | |
class | IDeconvolutionLayer |
网络定义中的反卷积层。 更多... | |
class | IDequantizeLayer |
网络定义中的反量化层。 更多... | |
class | IDimensionExpr |
IDimensionExpr 表示由常量、输入维度和二元运算构造的整数表达式。 这些表达式可用于覆盖 IPluginV2DynamicExt::getOutputDimensions 或 IPluginV3OneBuild::getOutputShapes(),以根据输入维度定义输出维度。 更多... | |
class | IDynamicQuantizeLayer |
执行动态量化的网络层。 更多... | |
class | IEinsumLayer |
网络中的 Einsum 层。 更多... | |
class | IElementWiseLayer |
网络定义中的逐元素层。 更多... | |
class | IEngineInspector |
引擎检查器,用于打印引擎或执行上下文的层信息。 更多... | |
class | IExecutionContext |
使用引擎执行推理的上下文,具有功能上不安全的功能。 更多... | |
class | IExprBuilder |
用于构造 IDimensionExpr 的对象。 更多... | |
class | IFillLayer |
根据指定的模式生成张量。 更多... | |
class | IGatherLayer |
网络定义中的 Gather 层。支持多种类型的 Gather 操作。 更多... | |
class | IGridSampleLayer |
网络定义中的 GridSample 层。 更多... | |
class | IHostMemory |
用于处理库分配的、用户可访问的内存的类。 更多... | |
class | IIdentityLayer |
表示恒等函数的层。 更多... | |
class | IIfConditional |
用于构建条件执行的子图的助手。 更多... | |
class | IIfConditionalBoundaryLayer |
这是条件边界层的基类。 更多... | |
class | IIfConditionalInputLayer |
此层表示 IIfConditional 的输入。 更多... | |
class | IIfConditionalOutputLayer |
此层表示 IIfConditional 的输出。 更多... | |
class | IInt8Calibrator |
应用程序实现的用于校准的接口。 更多... | |
class | IIteratorLayer |
执行迭代的层。 更多... | |
class | ILayer |
网络定义中所有层类的基类。 更多... | |
class | ILogger |
构建器、重拟合器和运行时的应用程序实现的日志记录接口。 更多... | |
class | ILoggerFinder |
用于查找记录器的虚拟基类。允许插件在需要发出日志消息时查找记录器的实例。当插件作为版本兼容计划的一部分进行序列化时,指向此类的实例的指针会在初始化时传递给插件共享库。有关详细信息,请参阅开发者指南中的插件章节。 更多... | |
class | ILoop |
用于创建循环子图的助手。 更多... | |
class | ILoopBoundaryLayer |
这是循环边界层的基类。 更多... | |
class | ILoopOutputLayer |
ILoopOutputLayer 是从循环获取输出的唯一方法。 更多... | |
class | ILRNLayer |
网络定义中的 LRN 层。 更多... | |
class | IMatrixMultiplyLayer |
表示矩阵乘法的层。 更多... | |
class | INetworkDefinition |
构建器的输入网络定义。 更多... | |
class | INMSLayer |
网络定义中的非最大抑制层。 更多... | |
class | INoCopy |
为了其他接口使用而预先声明 IEngineInspector。 更多... | |
class | INonZeroLayer |
class | INormalizationLayer |
网络定义中的归一化层。 更多... | |
class | InterfaceInfo |
与 TRT 接口关联的版本信息。 更多... | |
class | IOneHotLayer |
网络定义中的 OneHot 层。 更多... | |
class | IOptimizationProfile |
用于动态输入维度和形状张量的优化配置文件。 更多... | |
class | IPaddingLayer |
表示填充操作的层。 更多... | |
class | IParametricReLULayer |
表示参数 ReLU 操作的层。 更多... | |
class | IPluginRegistry |
应用程序中所有插件的单一注册点。它用于在引擎反序列化期间查找插件实现。在内部,插件注册表被认为是单例,因此应用程序中的所有插件都属于同一个全局注册表。请注意,插件注册表仅支持 IPluginV2 类型的插件,并且还应具有相应的 IPluginCreator 实现。 更多... | |
class | IPluginResourceContext |
用于插件访问 TensorRT 提供的每个上下文资源的接口。 更多... | |
class | IPluginV2 |
用户实现的层的插件类。 更多... | |
class | IPluginV2DynamicExt |
类似于 IPluginV2Ext,但支持动态形状。 更多... | |
class | IPluginV2Ext |
用户实现的层的插件类。 更多... | |
class | IPluginV2IOExt |
用户实现的层的插件类。 更多... | |
class | IPluginV2Layer |
pluginV2 的层类型。 更多... | |
class | IPluginV3Layer |
V3 插件的层类型。 更多... | |
class | IPoolingLayer |
网络定义中的池化层。 更多... | |
class | IQuantizeLayer |
网络定义中的量化层。 更多... | |
class | IRaggedSoftMaxLayer |
网络定义中的 RaggedSoftmax 层。 更多... | |
class | IRecurrenceLayer |
网络定义中的循环层。 更多... | |
class | IReduceLayer |
表示跨非布尔张量进行缩减的层。 更多... | |
class | IRefitter |
更新引擎中的权重。 更多... | |
class | IResizeLayer |
网络定义中的调整大小层。 更多... | |
class | IReverseSequenceLayer |
网络定义中的 ReverseSequence 层。 更多... | |
class | IRuntime |
允许反序列化功能上不安全的序列化引擎。 更多... | |
class | IScaleLayer |
网络定义中的 Scale 层。 更多... | |
class | IScatterLayer |
网络定义中的 Scatter 层。支持多种类型的 Scatter 操作。 更多... | |
class | ISelectLayer |
根据条件张量从两个数据张量中选择元素。 更多... | |
class | ISerializationConfig |
保存用于配置引擎以序列化二进制文件的属性。 更多... | |
class | IShapeLayer |
用于获取张量形状的层类型。 更多... | |
class | IShuffleLayer |
用于混洗数据的层类型。 更多... | |
class | ISliceLayer |
根据偏移量和步幅将输入张量切片为输出张量。 更多... | |
class | ISoftMaxLayer |
网络定义中的 Softmax 层。 更多... | |
class | ISqueezeLayer |
表示 squeeze 操作的层,在轴集合上移除输入张量的单位维度。 更多... | |
class | ITensor |
网络定义中的张量。 更多... | |
class | ITimingCache |
用于处理从构建器收集的策略计时信息的类。 更多... | |
class | ITopKLayer |
表示 TopK 缩减的层。 更多... | |
class | ITripLimitLayer |
表示 trip-count 限制器的层。 更多... | |
class | IUnaryLayer |
表示一元运算的层。 更多... | |
class | IUnsqueezeLayer |
表示unsqueeze 操作的层,该操作通过在输出的指定轴处插入单位长度维度来重塑输入张量。 更多... | |
class | IVersionedInterface |
用于版本控制的接口类。 更多... | |
struct | Permutation |
表示维度的排列。 更多... | |
class | PluginField |
包含插件属性字段名称和关联数据的结构。可以解析此信息以解码必要的插件元数据。 更多... | |
struct | PluginFieldCollection |
插件字段集合结构体。 更多... | |
class | PluginRegistrar |
将插件创建器注册到注册表。当插件库加载时,将实例化静态注册表对象。此静态对象会将库中所有可用的创建器注册到注册表。 更多... | |
struct | PluginTensorDesc |
插件可能看到的输入或输出字段。 更多... | |
class | Weights |
用作层参数的权重数组。 更多... | |
枚举 | |
enum class | LayerType : int32_t { kCONVOLUTION = 0 , kCAST = 1 , kACTIVATION = 2 , kPOOLING = 3 , kLRN = 4 , kSCALE = 5 , kSOFTMAX = 6 , kDECONVOLUTION = 7 , kCONCATENATION = 8 , kELEMENTWISE = 9 , kPLUGIN = 10 , kUNARY = 11 , kPADDING = 12 , kSHUFFLE = 13 , kREDUCE = 14 , kTOPK = 15 , kGATHER = 16 , kMATRIX_MULTIPLY = 17 , kRAGGED_SOFTMAX = 18 , kCONSTANT = 19 , kIDENTITY = 20 , kPLUGIN_V2 = 21 , kSLICE = 22 , kSHAPE = 23 , kPARAMETRIC_RELU = 24 , kRESIZE = 25 , kTRIP_LIMIT = 26 , kRECURRENCE = 27 , kITERATOR = 28 , kLOOP_OUTPUT = 29 , kSELECT = 30 , kFILL = 31 , kQUANTIZE = 32 , kDEQUANTIZE = 33 , kCONDITION = 34 , kCONDITIONAL_INPUT = 35 , kCONDITIONAL_OUTPUT = 36 , kSCATTER = 37 , kEINSUM = 38 , kASSERTION = 39 , kONE_HOT = 40 , kNON_ZERO = 41 , kGRID_SAMPLE = 42 , kNMS = 43 , kREVERSE_SEQUENCE = 44 , kNORMALIZATION = 45 , kPLUGIN_V3 = 46 , kSQUEEZE = 47 , kUNSQUEEZE = 48 , kCUMULATIVE = 49 , kDYNAMIC_QUANTIZE = 50 } |
层类的类型值。 更多... | |
enum class | ActivationType : int32_t { kRELU = 0 , kSIGMOID = 1 , kTANH = 2 , kLEAKY_RELU = 3 , kELU = 4 , kSELU = 5 , kSOFTSIGN = 6 , kSOFTPLUS = 7 , kCLIP = 8 , kHARD_SIGMOID = 9 , kSCALED_TANH = 10 , kTHRESHOLDED_RELU = 11 , kGELU_ERF = 12 , kGELU_TANH = 13 } |
枚举激活层中要执行的激活类型。 更多... | |
enum class | PaddingMode : int32_t { kEXPLICIT_ROUND_DOWN = 0 , kEXPLICIT_ROUND_UP = 1 , kSAME_UPPER = 2 , kSAME_LOWER = 3 } |
枚举在卷积层、反卷积层和池化层中执行的填充模式,如果同时使用 setPaddingMode() 和 setPrePadding(),则填充模式优先。 更多... | |
enum class | PoolingType : int32_t { kMAX = 0 , kAVERAGE = 1 , kMAX_AVERAGE_BLEND = 2 } |
在池化层中执行的池化类型。 更多... | |
enum class | ScaleMode : int32_t { kUNIFORM = 0 , kCHANNEL = 1 , kELEMENTWISE = 2 } |
控制如何在 Scale 层中应用 shift、scale 和 power。 更多... | |
enum class | ElementWiseOperation : int32_t { kSUM = 0 , kPROD = 1 , kMAX = 2 , kMIN = 3 , kSUB = 4 , kDIV = 5 , kPOW = 6 , kFLOOR_DIV = 7 , kAND = 8 , kOR = 9 , kXOR = 10 , kEQUAL = 11 , kGREATER = 12 , kLESS = 13 } |
枚举 ElementWise 层可能执行的二元运算。 更多... | |
enum class | GatherMode : int32_t { kDEFAULT = 0 , kELEMENT = 1 , kND = 2 } |
控制 IGatherLayer 的形式。 更多... | |
enum class | UnaryOperation : int32_t { kEXP = 0 , kLOG = 1 , kSQRT = 2 , kRECIP = 3 , kABS = 4 , kNEG = 5 , kSIN = 6 , kCOS = 7 , kTAN = 8 , kSINH = 9 , kCOSH = 10 , kASIN = 11 , kACOS = 12 , kATAN = 13 , kASINH = 14 , kACOSH = 15 , kATANH = 16 , kCEIL = 17 , kFLOOR = 18 , kERF = 19 , kNOT = 20 , kSIGN = 21 , kROUND = 22 , kISINF = 23 , kISNAN = 24 } |
枚举 Unary 层可能执行的一元运算。 更多... | |
enum class | ReduceOperation : int32_t { kSUM = 0 , kPROD = 1 , kMAX = 2 , kMIN = 3 , kAVG = 4 } |
枚举 Reduce 层可能执行的规约运算。 更多... | |
enum class | SampleMode : int32_t { kSTRICT_BOUNDS = 0 , kWRAP = 1 , kCLAMP = 2 , kFILL = 3 , kREFLECT = 4 } |
控制 ISliceLayer 和 IGridSample 如何处理越界坐标。 更多... | |
enum class | TopKOperation : int32_t { kMAX = 0 , kMIN = 1 } |
枚举 TopK 层可能执行的运算。 更多... | |
enum class | MatrixOperation : int32_t { kNONE = 0 , kTRANSPOSE = 1 , kVECTOR = 2 } |
枚举 IMatrixMultiplyLayer 在乘法运算之前可能对张量执行的运算。 更多... | |
enum class | InterpolationMode : int32_t { kNEAREST = 0 , kLINEAR = 1 , kCUBIC = 2 } |
枚举各种插值模式。 更多... | |
enum class | ResizeCoordinateTransformation : int32_t { kALIGN_CORNERS = 0 , kASYMMETRIC = 1 , kHALF_PIXEL = 2 } |
调整大小坐标变换函数。 更多... | |
enum class | ResizeSelector : int32_t { kFORMULA = 0 , kUPPER = 1 } |
调整大小到单像素输出时的坐标选择器。 更多... | |
enum class | ResizeRoundMode : int32_t { kHALF_UP = 0 , kHALF_DOWN = 1 , kFLOOR = 2 , kCEIL = 3 } |
最近邻调整大小的舍入模式。 更多... | |
enum class | LoopOutput : int32_t { kLAST_VALUE = 0 , kCONCATENATE = 1 , kREVERSE = 2 } |
enum class | TripLimit : int32_t { kCOUNT = 0 , kWHILE = 1 } |
enum class | FillOperation : int32_t { kLINSPACE = 0 , kRANDOM_UNIFORM = 1 , kRANDOM_NORMAL = 2 } |
枚举 fill 层可能执行的张量填充操作。 更多... | |
enum class | ScatterMode : int32_t { kELEMENT = 0 , kND = 1 } |
控制 IScatterLayer 的形式。 更多... | |
enum class | BoundingBoxFormat : int32_t { kCORNER_PAIRS = 0 , kCENTER_SIZES = 1 } |
用于 INMSLayer 中 Boxes 输入张量的边界框数据表示形式。 更多... | |
enum class | CumulativeOperation : int32_t { kSUM = 0 } |
枚举 Cumulative 层可能执行的累积运算。 更多... | |
enum class | CalibrationAlgoType : int32_t { kLEGACY_CALIBRATION = 0 , kENTROPY_CALIBRATION = 1 , kENTROPY_CALIBRATION_2 = 2 , kMINMAX_CALIBRATION = 3 } |
要使用的校准算法版本。 更多... | |
enum class | QuantizationFlag : int32_t { kCALIBRATE_BEFORE_FUSION = 0 } |
用于将网络量化为 int8 的有效标志列表。 更多... | |
enum class | RuntimePlatform : int32_t { kSAME_AS_BUILD = 0 , kWINDOWS_AMD64 = 1 } |
描述 TensorRT 引擎执行的预期运行时平台(操作系统和 CPU 架构)。当目标运行时平台与构建平台不同时,TensorRT 提供对跨平台引擎兼容性的支持。 更多... | |
enum class | BuilderFlag : int32_t { kFP16 = 0 , kINT8 = 1 , kDEBUG = 2 , kGPU_FALLBACK = 3 , kREFIT = 4 , kDISABLE_TIMING_CACHE = 5 , kTF32 = 6 , kSPARSE_WEIGHTS = 7 , kSAFETY_SCOPE = 8 , kOBEY_PRECISION_CONSTRAINTS = 9 , kPREFER_PRECISION_CONSTRAINTS = 10 , kDIRECT_IO = 11 , kREJECT_EMPTY_ALGORITHMS = 12 , kVERSION_COMPATIBLE = 13 , kEXCLUDE_LEAN_RUNTIME = 14 , kFP8 = 15 , kERROR_ON_TIMING_CACHE_MISS = 16 , kBF16 = 17 , kDISABLE_COMPILATION_CACHE = 18 , kSTRIP_PLAN = 19 , kWEIGHTLESS = kSTRIP_PLAN , kREFIT_IDENTICAL = 20 , kWEIGHT_STREAMING = 21 , kINT4 = 22 , kREFIT_INDIVIDUAL = 23 , kSTRICT_NANS = 24 , kMONITOR_MEMORY = 25 , kFP4 = 26 , kEDITABLE_TIMING_CACHE = 27 } |
构建器在从网络定义创建引擎时可以启用的有效模式列表。 更多... | |
enum class | MemoryPoolType : int32_t { kWORKSPACE = 0 , kDLA_MANAGED_SRAM = 1 , kDLA_LOCAL_DRAM = 2 , kDLA_GLOBAL_DRAM = 3 , kTACTIC_DRAM = 4 , kTACTIC_SHARED_MEMORY = 5 } |
TensorRT 使用的内存池类型。 更多... | |
enum class | PreviewFeature : int32_t { kPROFILE_SHARING_0806 = 0 , kALIASED_PLUGIN_IO_10_03 = 1 } |
定义预览功能。 更多... | |
enum class | HardwareCompatibilityLevel : int32_t { kNONE = 0 , kAMPERE_PLUS = 1 } |
描述与其他 GPU 架构(而非构建引擎所用 GPU 的架构)的兼容性要求。 更多... | |
enum class | TilingOptimizationLevel : int32_t { kNONE = 0 , kFAST = 1 , kMODERATE = 2 , kFULL = 3 } |
定义 Tiling 的优化级别。 更多... | |
enum class | NetworkDefinitionCreationFlag : int32_t { kEXPLICIT_BATCH = 0 , kSTRONGLY_TYPED = 1 } |
在网络创建时表达的不可变网络属性列表。 NetworkDefinitionCreationFlag 与 createNetworkV2() 一起使用,以指定网络的不可变属性。 更多... | |
enum class | PluginFieldType : int32_t { kFLOAT16 = 0 , kFLOAT32 = 1 , kFLOAT64 = 2 , kINT8 = 3 , kINT16 = 4 , kINT32 = 5 , kCHAR = 6 , kDIMS = 7 , kUNKNOWN = 8 , kBF16 = 9 , kINT64 = 10 , kFP8 = 11 , kINT4 = 12 , kFP4 = 13 } |
自定义层的可能字段类型。 更多... | |
enum class | TensorRTPhase : int32_t { kBUILD = 0 , kRUNTIME = 1 } |
指示 TensorRT 的操作阶段。 更多... | |
enum class | PluginCapabilityType : int32_t { kCORE = 0 , kBUILD = 1 , kRUNTIME = 2 } |
枚举 IPluginV3 对象可能具有的不同能力类型。 更多... | |
enum class | EngineCapability : int32_t { kSTANDARD = 0 , kSAFETY = 1 , kDLA_STANDALONE = 2 } |
支持的引擎能力流程列表。 更多... | |
enum class | DimensionOperation : int32_t { kSUM = 0 , kPROD = 1 , kMAX = 2 , kMIN = 3 , kSUB = 4 , kEQUAL = 5 , kLESS = 6 , kFLOOR_DIV = 7 , kCEIL_DIV = 8 } |
对两个 IDimensionExpr 的运算,IDimensionExpr 表示维度计算中使用的整数表达式。 更多... | |
enum class | TensorLocation : int32_t { kDEVICE = 0 , kHOST = 1 } |
张量数据存储的位置,设备或主机。 更多... | |
enum class | SeekPosition : int32_t { kSET = 0 , kCUR = 1 , kEND = 2 } |
控制 IStreamReaderV2 的查找模式。 更多... | |
enum class | WeightsRole : int32_t { kKERNEL = 0 , kBIAS = 1 , kSHIFT = 2 , kSCALE = 3 , kCONSTANT = 4 , kANY = 5 } |
层如何使用特定的权重 (Weights)。 更多... | |
enum class | DeviceType : int32_t { kGPU = 0 , kDLA = 1 } |
此层/网络将在其上执行的设备。 更多... | |
enum class | TempfileControlFlag : int32_t { kALLOW_IN_MEMORY_FILES = 0 , kALLOW_TEMPORARY_FILES = 1 } |
用于控制 TensorRT 在创建可执行临时文件时的行为的标志。 更多... | |
enum class | TensorFormat : int32_t { kLINEAR = 0 , kCHW2 = 1 , kHWC8 = 2 , kCHW4 = 3 , kCHW16 = 4 , kCHW32 = 5 , kDHWC8 = 6 , kCDHW32 = 7 , kHWC = 8 , kDLA_LINEAR = 9 , kDLA_HWC4 = 10 , kHWC16 = 11 , kDHWC = 12 } |
输入/输出张量的格式。 更多... | |
enum class | AllocatorFlag : int32_t { kRESIZABLE = 0 } |
允许的内存分配类型。 更多... | |
enum class | OptProfileSelector : int32_t { kMIN = 0 , kOPT = 1 , kMAX = 2 } |
当设置或查询优化配置文件参数(例如形状张量输入或动态维度)时,选择我们是否对这些参数的最小值、最优值或最大值感兴趣。最小值和最大值指定运行时支持的允许范围,而最优值用于内核选择。这应该是运行时预期发生的“典型”值。 更多... | |
enum class | TacticSource : int32_t { kCUBLAS = 0 , kCUBLAS_LT = 1 , kCUDNN = 2 , kEDGE_MASK_CONVOLUTIONS = 3 , kJIT_CONVOLUTIONS = 4 } |
TensorRT 的 tactic 来源列表。 更多... | |
enum class | ProfilingVerbosity : int32_t { kLAYER_NAMES_ONLY = 0 , kNONE = 1 , kDETAILED = 2 } |
NVTX 注释和 IEngineInspector 中公开的层信息的详细级别列表。 更多... | |
enum class | SerializationFlag : int32_t { kEXCLUDE_WEIGHTS = 0 , kEXCLUDE_LEAN_RUNTIME = 1 } |
引擎在序列化字节时可以启用的有效标志列表。 更多... | |
enum class | ExecutionContextAllocationStrategy : int32_t { kSTATIC = 0 , kON_PROFILE_CHANGE = 1 , kUSER_MANAGED = 2 } |
IExecutionContext 的不同内存分配行为。 更多... | |
enum class | LayerInformationFormat : int32_t { kONELINE = 0 , kJSON = 1 } |
IEngineInspector 打印层信息的格式。 更多... | |
enum class | DataType : int32_t { kFLOAT = 0 , kHALF = 1 , kINT8 = 2 , kINT32 = 3 , kBOOL = 4 , kUINT8 = 5 , kFP8 = 6 , kBF16 = 7 , kINT64 = 8 , kINT4 = 9 , kFP4 = 10 } |
权重和张量的类型。 更多... | |
enum class | APILanguage : int32_t { kCPP = 0 , kPYTHON = 1 } |
用于实现 TRT 接口的编程语言。 更多... | |
enum class | ErrorCode : int32_t { kSUCCESS = 0 , kUNSPECIFIED_ERROR = 1 , kINTERNAL_ERROR = 2 , kINVALID_ARGUMENT = 3 , kINVALID_CONFIG = 4 , kFAILED_ALLOCATION = 5 , kFAILED_INITIALIZATION = 6 , kFAILED_EXECUTION = 7 , kFAILED_COMPUTATION = 8 , kINVALID_STATE = 9 , kUNSUPPORTED_STATE = 10 } |
TensorRT 在执行期间可能返回的错误代码。 更多... | |
enum class | TensorIOMode : int32_t { kNONE = 0 , kINPUT = 1 , kOUTPUT = 2 } |
张量 IO 模式的定义。 更多... | |
enum class | PluginVersion : uint8_t { kV2 = 0 , kV2_EXT = 1 , kV2_IOEXT = 2 , kV2_DYNAMICEXT = 3 , kV2_DYNAMICEXT_PYTHON = kPLUGIN_VERSION_PYTHON_BIT | 3 } |
enum class | PluginCreatorVersion : int32_t { kV1 = 0 , kV1_PYTHON = kPLUGIN_VERSION_PYTHON_BIT } |
枚举类型,用于标识插件创建器的版本。 更多... | |
函数 | |
template<> | |
constexpr int32_t | EnumMax< LayerType > () noexcept |
template<> | |
constexpr int32_t | EnumMax< ScaleMode > () noexcept |
template<> | |
constexpr int32_t | EnumMax< GatherMode > () noexcept |
template<> | |
constexpr int32_t | EnumMax< UnaryOperation > () noexcept |
template<> | |
constexpr int32_t | EnumMax< ReduceOperation > () noexcept |
template<> | |
constexpr int32_t | EnumMax< SampleMode > () noexcept |
template<> | |
constexpr int32_t | EnumMax< TopKOperation > () noexcept |
template<> | |
constexpr int32_t | EnumMax< MatrixOperation > () noexcept |
template<> | |
constexpr int32_t | EnumMax< LoopOutput > () noexcept |
template<> | |
constexpr int32_t | EnumMax< TripLimit > () noexcept |
template<> | |
constexpr int32_t | EnumMax< FillOperation > () noexcept |
template<> | |
constexpr int32_t | EnumMax< ScatterMode > () noexcept |
template<> | |
constexpr int32_t | EnumMax< BoundingBoxFormat > () noexcept |
template<> | |
constexpr int32_t | EnumMax< CalibrationAlgoType > () noexcept |
template<> | |
constexpr int32_t | EnumMax< QuantizationFlag > () noexcept |
template<> | |
constexpr int32_t | EnumMax< BuilderFlag > () noexcept |
template<> | |
constexpr int32_t | EnumMax< MemoryPoolType > () noexcept |
template<> | |
constexpr int32_t | EnumMax< NetworkDefinitionCreationFlag > () noexcept |
nvinfer1::IPluginRegistry * | getBuilderPluginRegistry (nvinfer1::EngineCapability capability) noexcept |
返回用于构建标准引擎的插件注册表;如果注册表不存在,则返回 nullptr。 更多... | |
nvinfer1::safe::IPluginRegistry * | getBuilderSafePluginRegistry (nvinfer1::EngineCapability capability) noexcept |
返回用于构建安全引擎的插件注册表;如果注册表不存在,则返回 nullptr。 更多... | |
template<> | |
constexpr int32_t | EnumMax< DimensionOperation > () noexcept |
DimensionOperation 枚举中元素的最大数量。 更多... | |
template<> | |
constexpr int32_t | EnumMax< WeightsRole > () noexcept |
WeightsRole 枚举中元素的最大数量。 更多... | |
template<> | |
constexpr int32_t | EnumMax< DeviceType > () noexcept |
DeviceType 枚举中元素的最大数量。 更多... | |
template<> | |
constexpr int32_t | EnumMax< TempfileControlFlag > () noexcept |
TempfileControlFlag 枚举中元素的最大数量。 更多... | |
template<> | |
constexpr int32_t | EnumMax< OptProfileSelector > () noexcept |
OptProfileSelector 枚举的不同值的数量。 更多... | |
template<> | |
constexpr int32_t | EnumMax< TacticSource > () noexcept |
TacticSource 枚举中策略源的最大数量。 更多... | |
template<> | |
constexpr int32_t | EnumMax< ProfilingVerbosity > () noexcept |
ProfilingVerbosity 枚举中性能分析详细级别最大数量。 更多... | |
template<> | |
constexpr int32_t | EnumMax< SerializationFlag > () noexcept |
SerializationFlag 枚举中序列化标志的最大数量。 更多... | |
template<> | |
constexpr int32_t | EnumMax< ExecutionContextAllocationStrategy > () noexcept |
ExecutionContextAllocationStrategy 枚举中内存分配策略的最大数量。 更多... | |
template<> | |
constexpr int32_t | EnumMax< LayerInformationFormat > () noexcept |
template<typename T > | |
constexpr int32_t | EnumMax () noexcept |
枚举类型中元素的最大数量。 更多... | |
TensorRT API 版本 1 的命名空间。
using nvinfer1::AllocatorFlags = typedef uint32_t |
using nvinfer1::AsciiChar = typedef char_t |
AsciiChar 是 TensorRT 用于表示有效 ASCII 字符的类型。此类型广泛用于汽车安全领域。
using nvinfer1::BuilderFlags = typedef uint32_t |
使用二进制 OR 操作表示一个或多个 BuilderFlag 值,例如:1U << BuilderFlag::kFP16 | 1U << BuilderFlag::kDEBUG。
using nvinfer1::char_t = typedef char |
char_t 是 TensorRT 用于表示所有有效字符的类型。
using nvinfer1::Dims = typedef Dims64 |
Dims64 的别名。
using nvinfer1::IAlgorithmSelector = typedef v_1_0::IAlgorithmSelector |
using nvinfer1::IDebugListener = typedef v_1_0::IDebugListener |
using nvinfer1::IGpuAsyncAllocator = typedef v_1_0::IGpuAsyncAllocator |
using nvinfer1::IInt8EntropyCalibrator = typedef v_1_0::IInt8EntropyCalibrator |
using nvinfer1::IInt8EntropyCalibrator2 = typedef v_1_0::IInt8EntropyCalibrator2 |
using nvinfer1::IInt8LegacyCalibrator = typedef v_1_0::IInt8LegacyCalibrator |
using nvinfer1::IInt8MinMaxCalibrator = typedef v_1_0::IInt8MinMaxCalibrator |
using nvinfer1::InterfaceKind = typedef char const* |
using nvinfer1::IOutputAllocator = typedef v_1_0::IOutputAllocator |
using nvinfer1::IPluginCapability = typedef v_1_0::IPluginCapability |
using nvinfer1::IPluginCreator = typedef v_1_0::IPluginCreator |
using nvinfer1::IPluginCreatorInterface = typedef v_1_0::IPluginCreatorInterface |
using nvinfer1::IPluginCreatorV3One = typedef v_1_0::IPluginCreatorV3One |
using nvinfer1::IPluginResource = typedef v_1_0::IPluginResource |
using nvinfer1::IPluginV3 = typedef v_1_0::IPluginV3 |
using nvinfer1::IPluginV3OneBuild = typedef v_1_0::IPluginV3OneBuild |
using nvinfer1::IPluginV3OneBuildV2 = typedef v_2_0::IPluginV3OneBuild |
using nvinfer1::IPluginV3OneCore = typedef v_1_0::IPluginV3OneCore |
using nvinfer1::IPluginV3OneRuntime = typedef v_1_0::IPluginV3OneRuntime |
using nvinfer1::IProfiler = typedef v_1_0::IProfiler |
using nvinfer1::IProgressMonitor = typedef v_1_0::IProgressMonitor |
using nvinfer1::IStreamReader = typedef v_1_0::IStreamReader |
using nvinfer1::IStreamReaderV2 = typedef v_1_0::IStreamReaderV2 |
using nvinfer1::NetworkDefinitionCreationFlags = typedef uint32_t |
使用二进制 OR 操作表示一个或多个 NetworkDefinitionCreationFlag 标志。例如:1U << NetworkDefinitionCreationFlag::kSTRONGLY_TYPED。
using nvinfer1::PluginFormat = typedef TensorFormat |
PluginFormat 保留用于向后兼容。
using nvinfer1::QuantizationFlags = typedef uint32_t |
使用二进制 OR 操作表示一个或多个 QuantizationFlag 值。
using nvinfer1::SerializationFlags = typedef uint32_t |
使用二进制 OR 操作表示一个或多个 SerializationFlag 值,例如:1U << SerializationFlag::kEXCLUDE_LEAN_RUNTIME。
using nvinfer1::TacticSources = typedef uint32_t |
表示使用按位 OR 运算组合的一个或多个 TacticSource 值的集合。
using nvinfer1::TempfileControlFlags = typedef uint32_t |
表示使用按位 OR 运算组合的一个或多个 TempfileControlFlag 值的集合。
using nvinfer1::TensorFormats = typedef uint32_t |
它能够通过二进制 OR 运算表示一个或多个 TensorFormat,例如:1U << TensorFormat::kCHW4 | 1U << TensorFormat::kCHW32。
|
strong |
枚举在激活层中执行的激活类型。
|
strong |
|
strong |
|
strong |
|
strong |
构建器在从网络定义创建引擎时可以启用的有效模式列表。
枚举器 | |
---|---|
kFP16 | 启用 FP16 层选择,并使用 FP32 回退。 |
kINT8 | 启用 Int8 层选择,并使用 FP32 回退;如果同时指定 kFP16,则使用 FP16 回退。 |
kDEBUG | 通过在每层之后同步来启用层的调试。 |
kGPU_FALLBACK | 如果层无法在 DLA 上执行,则启用标记为在 GPU 上执行的层。 |
kREFIT | 启用构建可重装引擎。 |
kDISABLE_TIMING_CACHE | 禁用跨相同层重用时序信息。 |
kTF32 | 允许(但不要求)DataType::kFLOAT 类型的张量上的计算使用 TF32。TF32 通过在乘法之前将输入四舍五入到 10 位尾数来计算内积,但使用 23 位尾数累积和。默认启用。 |
kSPARSE_WEIGHTS | 允许构建器检查权重并在权重具有合适的稀疏性时使用优化的函数。 |
kSAFETY_SCOPE | 更改 EngineCapability::kSTANDARD 流程中允许的参数,以匹配 EngineCapability::kSAFETY 针对 DeviceType::kGPU 和 EngineCapability::kDLA_STANDALONE 针对 DeviceType::kDLA 情况检查的限制。如果在构建时 EngineCapability::kSAFETY 未设置,则此标志将被强制设置为 true。 此标志仅在 NVIDIA Drive(R) 产品中受支持。 |
kOBEY_PRECISION_CONSTRAINTS | 要求层以指定的精度执行。否则构建失败。 |
kPREFER_PRECISION_CONSTRAINTS | 首选层以指定的精度执行。如果构建在其他情况下会失败,则回退(并发出警告)到另一种精度。 |
kDIRECT_IO | 对于调用了 ITensor::setAllowedFormats 的层和网络 I/O 张量之间,要求不插入重格式化。如果功能正确性需要重格式化,则构建失败。
|
kREJECT_EMPTY_ALGORITHMS | 如果 IAlgorithmSelector::selectAlgorithms 返回空算法集,则失败。 |
kVERSION_COMPATIBLE | 限制为精简运行时运算符,以便为计划提供版本向前兼容性。 此标志仅受 NVIDIA Volta 及更高版本的 GPU 支持。NVIDIA Drive(R) 产品不支持此标志。 |
kEXCLUDE_LEAN_RUNTIME | 启用版本向前兼容性时,从计划中排除精简运行时。默认情况下,此标志未设置,因此精简运行时将包含在计划中。 如果未设置 BuilderFlag::kVERSION_COMPATIBLE,则将忽略此标志的值。 |
kFP8 | 启用具有 FP8 输入/输出的插件。 This flag is not supported with hardware-compatibility mode. \see HardwareCompatibilityLevel |
kERROR_ON_TIMING_CACHE_MISS | 当正在计时的策略不在时序缓存中时,发出错误。此标志仅在 IBuilderConfig 具有关联的 ITimingCache 时才生效。 |
kBF16 | 启用 DataType::kBF16 层选择,并使用 FP32 回退。此标志仅受 NVIDIA Ampere 及更高版本的 GPU 支持。 |
kDISABLE_COMPILATION_CACHE | 在引擎构建期间禁用 JIT 编译结果的缓存。默认情况下,JIT 编译的代码将作为时序缓存的一部分进行序列化,这可能会显着增加缓存大小。设置此标志可防止代码被序列化。此标志仅在未设置 BuilderFlag::DISABLE_TIMING_CACHE 时才生效。 |
kSTRIP_PLAN | 从引擎计划文件中剥离可重装权重。 |
kWEIGHTLESS |
|
kREFIT_IDENTICAL | 创建可重装引擎,并假设重装权重将与构建时提供的权重相同。生成的引擎将具有与不可重装引擎相同的性能。所有可重装权重都可以通过重装 API 进行重装,但如果重装权重与构建时权重不相同,则行为未定义。当与“kSTRIP_PLAN”一起使用时,此标志将生成一个小的计划文件,权重稍后通过重装提供。这使得可以将一组权重与不同的推理后端或与多个 GPU 架构的 TensorRT 计划一起使用。 |
kWEIGHT_STREAMING | 为当前引擎启用权重流式传输。 来自主机的权重流式传输通过允许 TensorRT 智能地从 CPU DRAM 流式传输网络权重,从而实现执行不适合 GPU 内存的模型。有关启用此标志时的默认内存预算,请参阅 ICudaEngine::getMinimumWeightStreamingBudget。 启用此功能会更改 IRuntime::deserializeCudaEngine 的行为,以在 CPU DRAM 而不是 GPU 内存上分配整个网络的权重。ICudaEngine::createExecutionContext 将确定 CPU 和 GPU 之间权重的最佳分配,并相应地放置权重。 未来的 TensorRT 版本可能会默认启用此标志。
|
kINT4 | 启用具有 INT4 输入/输出的插件。 |
kREFIT_INDIVIDUAL | 启用构建可重装引擎并提供细粒度控制。这允许使用 INetworkDefinition::markWeightsRefittable 和 INetworkDefinition::unmarkWeightsRefittable 控制哪些权重是可重装的或不可重装的。默认情况下,启用此标志时,所有权重都不可重装。此标志不能与 kREFIT 或 kREFIT_IDENTICAL 一起使用。 |
kSTRICT_NANS | 禁用浮点优化:0*x => 0、x-x => 0 或 x/x => 1。当 x 是 NaN 或 Inf 时,这些恒等式不成立,因此可能会隐藏 NaN 的传播或生成。此标志通常与 kSPARSE_WEIGHTS 结合使用。有三种有效的稀疏配置。
|
kMONITOR_MEMORY | 在构建时启用内存监视器。 |
kFP4 | 启用具有 FP4 输入/输出的插件。 |
kEDITABLE_TIMING_CACHE | 启用可编辑时序缓存。 |
|
strong |
要使用的校准算法版本。
枚举器 | |
---|---|
kLEGACY_CALIBRATION | 传统校准。 |
kENTROPY_CALIBRATION | 传统熵校准。 |
kENTROPY_CALIBRATION_2 | 熵校准。 |
kMINMAX_CALIBRATION | Minmax 校准。 |
|
strong |
|
strong |
权重和张量的类型。
|
strong |
|
strong |
对两个 IDimensionExpr 的操作,它们表示维度计算中使用的整数表达式。
例如,给定两个 IDimensionExpr x 和 y 以及一个 IExprBuilder& eb, eb.operation(DimensionOperation::kSUM, x, y) 创建 x+y 的表示。
枚举器 | |
---|---|
kSUM | 两个操作数的和。 |
kPROD | 两个操作数的积。 |
kMAX | 两个操作数的最大值。 |
kMIN | 两个操作数的最小值。 |
kSUB | 从第一个元素中减去第二个元素。 |
kEQUAL | 如果操作数相等,则为 1,否则为 0。 |
kLESS | 如果第一个操作数小于第二个操作数,则为 1,否则为 0。 |
kFLOOR_DIV | 第一个元素除以第二个元素的向下取整除法。 |
kCEIL_DIV | 向上取整除法。 |
|
strong |
枚举 ElementWise 层可以执行的二元运算。
运算 kAND、kOR 和 kXOR 必须具有 DataType::kBOOL 类型的输入。
运算 kPOW 必须具有浮点类型或 DataType::kINT8 类型的输入。
所有其他运算必须具有浮点类型、DataType::kINT8、DataType::kINT32 或 DataType::kINT64 类型的输入。
|
strong |
支持的引擎能力流程列表。
EngineCapability 决定了构建时网络的限制以及它所针对的运行时。当未设置 BuilderFlag::kSAFETY_SCOPE 时(默认情况下),EngineCapability::kSTANDARD 不会对功能施加任何限制,并且可以使用 TensorRT 标准运行时 API 在 nvinfer1 命名空间中执行生成的序列化引擎。EngineCapability::kSAFETY 提供了安全认证的网络操作的受限子集,并且可以使用 TensorRT 的安全运行时 API 在 nvinfer1::safe 命名空间中执行生成的序列化引擎。EngineCapability::kDLA_STANDALONE 提供了 DLA 兼容的网络操作的受限子集,并且可以使用独立的 DLA 运行时 API 执行生成的序列化引擎。有关将 cuDLA API 与 TensorRT API 集成的示例,请参见 sampleCudla。
枚举器 | |
---|---|
kSTANDARD | 标准:不以安全运行时为目标的 TensorRT 流程。此流程同时支持 DeviceType::kGPU 和 DeviceType::kDLA。 |
kSAFETY | 安全:具有针对安全运行时的限制的 TensorRT 流程。有关支持的层和格式列表,请参见安全文档。此流程仅支持 DeviceType::kGPU。 此标志仅在 NVIDIA Drive(R) 产品中受支持。 |
kDLA_STANDALONE | DLA 独立:具有针对 TensorRT 外部 DLA 运行时的限制的 TensorRT 流程。有关支持的层和格式列表,请参见 DLA 文档。此流程仅支持 DeviceType::kDLA。 |
|
strong |
TensorRT 在执行期间可能返回的错误代码。
|
strong |
IExecutionContext 的不同内存分配行为。
IExecutionContext 在推理期间需要一块设备内存用于内部激活张量。用户可以选择让执行上下文以各种方式管理内存,也可以自己分配内存。
枚举器 | |
---|---|
kSTATIC | 跨所有配置文件的最大大小的默认静态分配。 |
kON_PROFILE_CHANGE | 当配置文件被选中时,为该配置文件重新分配内存。 |
kUSER_MANAGED | 用户为执行上下文提供自定义分配。 |
|
strong |
枚举填充层可以执行的张量填充操作。
枚举器 | |
---|---|
kLINSPACE | 通过其索引的仿射函数计算每个值。例如,假设 IFillLayer 的参数为:
输出的元素 [i,j] 为 Alpha + Beta[0]*i + Beta[1]*j。因此,输出矩阵为: 1 11 21 31 101 111 121 131 201 211 221 231 静态 beta b 隐式地是一个 1D 张量,即 Beta = [b]。 |
kRANDOM_UNIFORM | 从均匀分布中随机抽取值。 |
kRANDOM_NORMAL | 从正态分布中随机抽取值。 |
|
strong |
控制 IGatherLayer 的形式。
枚举器 | |
---|---|
kDEFAULT | 类似于 ONNX Gather。 |
kELEMENT | 类似于 ONNX GatherElements。 |
kND | 类似于 ONNX GatherND。 |
|
strong |
描述与其他 GPU 架构(而非构建引擎的 GPU 架构)兼容性的要求。
除 kNONE 之外的级别仅适用于在 NVIDIA Ampere 及更高版本 GPU 上构建的引擎。
|
strong |
|
strong |
IEngineInspector 打印层信息的格式。
枚举器 | |
---|---|
kONELINE | 每层打印一行层信息。 |
kJSON | 以 JSON 格式打印层信息。 |
|
strong |
层类的类型值。
|
strong |
|
strong |
枚举了在矩阵乘法之前,可以由 IMatrixMultiplyLayer 对张量执行的操作。
枚举器 | |
---|---|
kNONE | 如果 x 有两个维度,则将其视为矩阵;如果 x 有两个以上维度,则将其视为矩阵集合,其中最后两个维度是矩阵维度。x 必须至少有两个维度。 |
kTRANSPOSE | 与 kNONE 类似,但转置矩阵维度。 |
kVECTOR | 如果 x 有一个维度,则将其视为向量;如果 x 有一个以上维度,则将其视为向量集合。x 必须至少有一个维度。 对于第一个输入张量,当维度为 [M,K] 且使用 MatrixOperation::kVECTOR 时,等效于维度为 [M, 1, K] 且使用 MatrixOperation::kNONE 的张量,即被视为长度为 K 的 M 行向量,或维度为 [M, K, 1] 且使用 MatrixOperation::kTRANSPOSE 的张量。 对于第二个输入张量,当维度为 [M,K] 且使用 MatrixOperation::kVECTOR 时,等效于维度为 [M, K, 1] 且使用 MatrixOperation::kNONE 的张量,即被视为长度为 K 的 M 列向量,或维度为 [M, 1, K] 且使用 MatrixOperation::kTRANSPOSE 的张量。 |
|
strong |
TensorRT 使用的内存池类型。
枚举器 | |
---|---|
kWORKSPACE | kWORKSPACE 由 TensorRT 用于存储操作中的中间缓冲区。默认设置为最大设备内存。设置为较小的值以限制大量使用超过阈值的策略。要更有针对性地移除策略,请使用 IAlgorithmSelector 接口。 |
kDLA_MANAGED_SRAM | kDLA_MANAGED_SRAM 是 DLA 使用的快速软件管理 RAM,用于在层内通信。此池的大小必须至少为 4 KiB,并且必须是 2 的幂。默认值为 1 MiB。Orin 每个核心的容量为 1 MiB。 |
kDLA_LOCAL_DRAM | kDLA_LOCAL_DRAM 是 DLA 使用的主机 RAM,用于在操作之间共享中间张量数据。此池的大小必须至少为 4 KiB,并且必须是 2 的幂。默认值为 1 GiB。 |
kDLA_GLOBAL_DRAM | kDLA_GLOBAL_DRAM 是 DLA 使用的主机 RAM,用于存储执行的权重和元数据。此池的大小必须至少为 4 KiB,并且必须是 2 的幂。默认值为 512 MiB。 |
kTACTIC_DRAM | kTACTIC_DRAM 是优化器用于运行策略的设备 DRAM。在主机和设备内存统一的嵌入式设备上,这包括 TensorRT 构建网络直到每次内存分配点所需的所有主机内存。当 cudaGetDeviceProperties.embedded 为 true 时,默认设置为 cudaGetDeviceProperties 报告的 totalGlobalMem 的 75%,否则为 100%。 |
kTACTIC_SHARED_MEMORY | kTACTIC_SHARED_MEMORY 定义了驱动程序保留并用于执行 CUDA 内核的共享内存的最大总和。调整此值以限制大量超过指定阈值的策略。默认值为设备最大容量。此值必须小于 1GiB。 驱动程序保留的共享内存可以从 cuDeviceGetAttribute(&reservedShmem, CU_DEVICE_ATTRIBUTE_RESERVED_SHARED_MEMORY_PER_BLOCK) 查询。 更新此标志将覆盖由 HardwareCompatibilityLevel 设置的共享内存限制,默认值为 48KiB - reservedShmem。 |
|
strong |
|
strong |
|
strong |
枚举要在卷积、反卷积和池化层中执行的填充模式,如果也使用了 setPaddingMode() 和 setPrePadding(),则填充模式优先。
有两种填充样式:EXPLICIT 和 SAME,每种样式都有两种变体。EXPLICIT 样式确定是否使用最终采样位置。SAME 样式确定填充中的不对称性是在前填充还是后填充上。
Formulas for Convolution
Formulas for Deconvolution
Formulas for Pooling
Pooling Example 1
池化示例 2
枚举器 | |
---|---|
kEXPLICIT_ROUND_DOWN | 使用显式填充,向下舍入输出大小。 |
kEXPLICIT_ROUND_UP | 使用显式填充,向上舍入输出大小。 |
kSAME_UPPER | 使用 SAME 填充,其中 prePadding <= postPadding。 |
kSAME_LOWER | 使用 SAME 填充,其中 prePadding >= postPadding。 |
|
strong |
|
strong |
|
strong |
自定义层的可能字段类型。
枚举器 | |
---|---|
kFLOAT16 | FP16 field type. |
kFLOAT32 | FP32 field type. |
kFLOAT64 | FP64 field type. |
kINT8 | INT8 field type. |
kINT16 | INT16 field type. |
kINT32 | INT32 field type. |
kCHAR | char field type. |
kDIMS | nvinfer1::Dims field type. |
kUNKNOWN | Unknown field type. |
kBF16 | BF16 field type. |
kINT64 | INT64 field type. |
kFP8 | FP8 field type. |
kINT4 | INT4 field type. |
kFP4 | FP4 field type. |
|
strong |
|
strong |
|
strong |
定义预览功能。
预览功能已经过全面测试,但稳定性不如 TensorRT 中的其他功能。它们作为可选功能提供至少一个版本。
枚举器 | |
---|---|
kPROFILE_SHARING_0806 | 允许跨执行上下文共享优化配置文件。
|
kALIASED_PLUGIN_IO_10_03 | 当使用 IPluginV3OneBuildV2 时,允许插件 I/O 被别名化 |
|
strong |
在 NVTX 注释和 IEngineInspector 中公开的层信息的详细级别列表。
枚举器 | |
---|---|
kLAYER_NAMES_ONLY | 仅打印层名称。这是默认设置。 |
kNONE | 不打印任何层信息。 |
kDETAILED | 打印详细的层信息,包括层名称和层参数。 |
|
strong |
用于将网络量化为 int8 的有效标志列表。
枚举器 | |
---|---|
kCALIBRATE_BEFORE_FUSION | 在层融合之前运行 int8 校准过程。仅对 IInt8LegacyCalibrator 和 IInt8EntropyCalibrator 有效。构建器始终在层融合之前为 IInt8MinMaxCalibrator 和 IInt8EntropyCalibrator2 运行 int8 校准过程。默认情况下禁用。 |
|
strong |
枚举 Reduce 层可以执行的 reduce 操作。
The table shows the result of reducing across an empty volume of a given type.
运算 | kFLOAT and kHALF | kINT32 | kINT8 |
---|---|---|---|
kSUM | 0 | 0 | 0 |
kPROD | 1 | 1 | 1 |
kMAX | negative infinity | INT_MIN | -128 |
kMIN | positive infinity | INT_MAX | 127 |
kAVG | NaN | 0 | -128 |
The current version of TensorRT usually performs reduction for kINT8 via kFLOAT or kHALF. The kINT8 values show the quantized representations of the floating-point values.
枚举器 | |
---|---|
kSUM | |
kPROD | |
kMAX | |
kMIN | |
kAVG |
|
strong |
调整大小的坐标变换函数。
|
strong |
|
strong |
|
strong |
描述 TensorRT 引擎执行的预期运行时平台(操作系统和 CPU 架构)。当目标运行时平台与构建平台不同时,TensorRT 提供对跨平台引擎兼容性的支持。
枚举器 | |
---|---|
kSAME_AS_BUILD | 对跨平台兼容性没有要求。TensorRT 构建的引擎只能在构建它的相同平台上运行。 |
kWINDOWS_AMD64 | 将引擎执行的目标平台指定为 Windows AMD64 系统。目前,只有在 Linux AMD64 平台上构建引擎时才能启用此标志。 |
|
strong |
控制 ISliceLayer 和 IGridSample 如何处理越界坐标。
枚举器 | |
---|---|
kSTRICT_BOUNDS | 当坐标越界时,报错。 |
kWRAP | 坐标周期性地环绕。 |
kCLAMP | 越界索引被钳制到边界内。 |
kFILL | 当坐标越界时,使用填充输入值。 |
kREFLECT | 坐标反射。反射轴是外围像素的中间,反射在填充区域内无限重复。重复单个像素的值,并为零像素抛出错误。 |
|
strong |
控制如何在 Scale 层中应用 shift、scale 和 power。
枚举器 | |
---|---|
kUNIFORM | 在张量的所有元素上使用相同的系数。 |
kCHANNEL | 逐通道系数。 |
kELEMENTWISE | 逐元素系数。 |
|
strong |
IScatterLayer 的控制形式。
枚举器 | |
---|---|
kELEMENT | 类似于 ONNX ScatterElements。 |
kND | 类似于 ONNX ScatterND。 |
|
strong |
控制 IStreamReaderV2 的查找模式。
枚举器 | |
---|---|
kSET | 从文件开头开始。 |
kCUR | 从文件当前位置开始。 |
kEND | 从文件末尾开始。 |
|
strong |
|
strong |
TensorRT 的策略来源列表。
枚举器 | |
---|---|
kCUBLAS | cuBLAS 策略。默认禁用。
|
kCUBLAS_LT | cuBLAS LT 策略。默认禁用。
|
kCUDNN | cuDNN 策略。默认禁用。
|
kEDGE_MASK_CONVOLUTIONS | 启用使用边缘掩码表实现的卷积策略。这些策略通过消耗与输入大小成比例的额外内存空间来权衡内存以换取性能。默认启用。 |
kJIT_CONVOLUTIONS | 启用使用源代码 JIT 融合实现的卷积策略。启用此选项时,引擎构建时间可能会增加。默认启用。 |
|
strong |
用于控制 TensorRT 在创建可执行临时文件时的行为的标志。
在某些平台上,TensorRT 运行时可能需要在临时目录中创建文件,或者使用平台特定的 API 在内存中创建文件,以加载实现运行时代码的临时 DLL。这些标志允许应用程序显式控制 TensorRT 对这些文件的使用。这将排除使用某些 TensorRT API 来反序列化和加载精简运行时。
枚举器 | |
---|---|
kALLOW_IN_MEMORY_FILES | 允许在内存中(或使用未命名的文件)创建和加载文件。 |
kALLOW_TEMPORARY_FILES | 允许在文件系统上的临时目录中创建和加载命名文件。 \see IRuntime::setTemporaryDirectory() |
|
strong |
输入/输出张量的格式。
此枚举被插件和网络 I/O 张量使用。
许多格式是向量主序或向量次序。这些格式指定一个向量维度和每个向量的标量数。例如,假设张量具有维度 [M,N,C,H,W],向量维度为 C,并且每个向量有 V 个标量。
在引用“每个元素的组件数”的接口中,这就是上面的 V 值。
有关数据格式的更多信息,请参阅 TensorRT 开发者指南中的主题“数据格式描述”。 https://docs.nvda.net.cn/deeplearning/tensorrt/developer-guide/index.html#data-format-desc
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
枚举 Unary 层可以执行的一元运算。
kNOT 操作的输入必须是 DataType::kBOOL。
kSIGN 和 kABS 操作的输入必须是浮点类型、DataType::kINT8、DataType::kINT32 或 DataType::kINT64。
kISINF 操作的输入必须是浮点类型。
所有其他操作的输入必须是浮点类型。
|
strong |
层如何使用特定的 Weights。
IScaleLayer 的 power weights 被省略。不支持重新拟合这些权重。
枚举器 | |
---|---|
kKERNEL | |
kBIAS | |
kSHIFT | IScaleLayer 的 shift 部分 |
kSCALE | IScaleLayer 的 scale 部分 |
kCONSTANT | IConstantLayer 的权重 |
kANY | 任何其他权重角色。 |
|
constexprnoexcept |
枚举类型中的最大元素数。
|
inlineconstexprnoexcept |
BoundingBoxFormat 枚举中的最大元素数。
|
inlineconstexprnoexcept |
BuilderFlag 枚举中的最大构建器标志数。
|
inlineconstexprnoexcept |
CalibrationAlgoType 枚举中的最大元素数。
|
inlineconstexprnoexcept |
DeviceType 枚举中的最大元素数。
|
inlineconstexprnoexcept |
DimensionOperation 枚举中的最大元素数。
|
inlineconstexprnoexcept |
ExecutionContextAllocationStrategy 枚举中的最大内存分配策略数。
|
inlineconstexprnoexcept |
FillOperation 枚举中的最大元素数。
|
inlineconstexprnoexcept |
GatherMode 枚举中的最大元素数。
|
inlineconstexprnoexcept |
LayerInformationFormat 枚举中的最大层信息格式数。
|
inlineconstexprnoexcept |
LayerType 枚举中的最大元素数。
|
inlineconstexprnoexcept |
LoopOutput 枚举中的最大元素数。
|
inlineconstexprnoexcept |
MatrixOperation 枚举中的最大元素数。
|
inlineconstexprnoexcept |
MemoryPoolType 枚举中的最大内存池类型数。
|
inlineconstexprnoexcept |
NetworkDefinitionCreationFlag 枚举中的最大元素数。
|
inlineconstexprnoexcept |
OptProfileSelector 枚举的不同值的数量。
|
inlineconstexprnoexcept |
ProfilingVerbosity 枚举中的最大配置文件详细程度级别数。
|
inlineconstexprnoexcept |
QuantizationFlag 枚举中的最大量化标志数。
|
inlineconstexprnoexcept |
ReduceOperation 枚举中的最大元素数。
|
inlineconstexprnoexcept |
SampleMode 枚举中的最大元素数。
|
inlineconstexprnoexcept |
ScaleMode 枚举中的最大元素数。
|
inlineconstexprnoexcept |
ScatterMode 枚举中的最大元素数。
|
inlineconstexprnoexcept |
SerializationFlag 枚举中序列化标志的最大数量。
|
inlineconstexprnoexcept |
TacticSource 枚举中策略来源的最大数量。
|
inlineconstexprnoexcept |
TempfileControlFlag 枚举中元素的最大数量。
|
inlineconstexprnoexcept |
TopKOperation 枚举中元素的最大数量。
|
inlineconstexprnoexcept |
TripLimit 枚举中元素的最大数量。
|
inlineconstexprnoexcept |
UnaryOperation 枚举中元素的最大数量。
|
inlineconstexprnoexcept |
WeightsRole 枚举中元素的最大数量。
|
noexcept |
返回用于构建标准引擎的插件注册表;如果注册表不存在,则返回 nullptr。
如果输入参数不是 EngineCapability::kSTANDARD,也返回 nullptr。 EngineCapability::kSTANDARD 和 EngineCapability::kSAFETY 引擎功能具有不同的插件注册表。当构建安全引擎时,请使用 nvinfer1::getBuilderSafePluginRegistry()。 使用注册表中的 IPluginRegistry::registerCreator 注册插件。 在与特定引擎功能关联的注册表中注册的插件,仅在该引擎功能的引擎构建时可用。
没有 EngineCapability::kDLA_STANDALONE 的插件注册表。
|
noexcept |
返回用于构建安全引擎的插件注册表;如果注册表不存在,则返回 nullptr。
如果输入参数不是 EngineCapability::kSAFETY,也返回 nullptr。 当构建标准引擎时,请使用 nvinfer1::getBuilderPluginRegistry()。 使用注册表中的 safe::IPluginRegistry::registerCreator 注册插件。
版权所有 © 2024 英伟达公司
隐私政策 | 管理我的隐私 | 请勿出售或分享我的数据 | 服务条款 | 辅助功能 | 公司政策 | 产品安全 | 联系我们