TensorRT 8.5.3
NvInfer.h File Reference
#include "NvInferLegacyDims.h"
#include "NvInferRuntime.h"

Go to the source code of this file.

Classes

struct  nvinfer1::impl::EnumMaxImpl< ActivationType >
 
class  nvinfer1::ITensor
 A tensor in a network definition. More...
 
class  nvinfer1::ILayer
 Base class for all layer classes in a network definition. More...
 
struct  nvinfer1::impl::EnumMaxImpl< PaddingMode >
 
class  nvinfer1::IConvolutionLayer
 A convolution layer in a network definition. More...
 
class  nvinfer1::IFullyConnectedLayer
 A fully connected layer in a network definition. This layer expects an input tensor of three or more non-batch dimensions. The input is automatically reshaped into an MxV tensor X, where V is a product of the last three dimensions and M is a product of the remaining dimensions (where the product over 0 dimensions is defined as 1). For example: More...
 
class  nvinfer1::IActivationLayer
 An Activation layer in a network definition. More...
 
struct  nvinfer1::impl::EnumMaxImpl< PoolingType >
 
class  nvinfer1::IPoolingLayer
 A Pooling layer in a network definition. More...
 
class  nvinfer1::ILRNLayer
 A LRN layer in a network definition. More...
 
class  nvinfer1::IScaleLayer
 A Scale layer in a network definition. More...
 
class  nvinfer1::ISoftMaxLayer
 A Softmax layer in a network definition. More...
 
class  nvinfer1::IConcatenationLayer
 A concatenation layer in a network definition. More...
 
class  nvinfer1::IDeconvolutionLayer
 A deconvolution layer in a network definition. More...
 
struct  nvinfer1::impl::EnumMaxImpl< ElementWiseOperation >
 
class  nvinfer1::IElementWiseLayer
 A elementwise layer in a network definition. More...
 
class  nvinfer1::IGatherLayer
 A Gather layer in a network definition. Supports several kinds of gathering. More...
 
class  nvinfer1::IRNNv2Layer
 An RNN layer in a network definition, version 2. More...
 
class  nvinfer1::IPluginV2Layer
 Layer type for pluginV2. More...
 
class  nvinfer1::IUnaryLayer
 Layer that represents an unary operation. More...
 
class  nvinfer1::IReduceLayer
 Layer that represents a reduction across a non-bool tensor. More...
 
class  nvinfer1::IPaddingLayer
 Layer that represents a padding operation. More...
 
struct  nvinfer1::Permutation
 
class  nvinfer1::IShuffleLayer
 Layer type for shuffling data. More...
 
class  nvinfer1::ISliceLayer
 Slices an input tensor into an output tensor based on the offset and strides. More...
 
class  nvinfer1::IShapeLayer
 Layer type for getting shape of a tensor. More...
 
class  nvinfer1::ITopKLayer
 Layer that represents a TopK reduction. More...
 
class  nvinfer1::IMatrixMultiplyLayer
 Layer that represents a Matrix Multiplication. More...
 
class  nvinfer1::INonZeroLayer
 
class  nvinfer1::IRaggedSoftMaxLayer
 A RaggedSoftmax layer in a network definition. More...
 
class  nvinfer1::IIdentityLayer
 A layer that represents the identity function. More...
 
class  nvinfer1::IConstantLayer
 Layer that represents a constant value. More...
 
class  nvinfer1::IParametricReLULayer
 Layer that represents a parametric ReLU operation. More...
 
struct  nvinfer1::impl::EnumMaxImpl< InterpolationMode >
 
struct  nvinfer1::impl::EnumMaxImpl< ResizeCoordinateTransformation >
 
struct  nvinfer1::impl::EnumMaxImpl< ResizeSelector >
 
struct  nvinfer1::impl::EnumMaxImpl< ResizeRoundMode >
 
class  nvinfer1::IResizeLayer
 A resize layer in a network definition. More...
 
class  nvinfer1::ILoopBoundaryLayer
 
class  nvinfer1::IIfConditionalBoundaryLayer
 
class  nvinfer1::IConditionLayer
 
class  nvinfer1::IIfConditionalOutputLayer
 
class  nvinfer1::IIfConditionalInputLayer
 
class  nvinfer1::IIfConditional
 
class  nvinfer1::IRecurrenceLayer
 
class  nvinfer1::ILoopOutputLayer
 
class  nvinfer1::ITripLimitLayer
 
class  nvinfer1::IIteratorLayer
 
class  nvinfer1::ILoop
 
class  nvinfer1::ISelectLayer
 
class  nvinfer1::IAssertionLayer
 An assertion layer in a network. More...
 
class  nvinfer1::IFillLayer
 Generate an output tensor with specified mode. More...
 
class  nvinfer1::IQuantizeLayer
 A Quantize layer in a network definition. More...
 
class  nvinfer1::IDequantizeLayer
 A Dequantize layer in a network definition. More...
 
class  nvinfer1::IEinsumLayer
 An Einsum layer in a network. More...
 
class  nvinfer1::IScatterLayer
 A scatter layer in a network definition. Supports several kinds of scattering. More...
 
class  nvinfer1::IOneHotLayer
 A OneHot layer in a network definition. More...
 
class  nvinfer1::IGridSampleLayer
 A GridSample layer in a network definition. More...
 
class  nvinfer1::INMSLayer
 A non-maximum suppression layer in a network definition. More...
 
class  nvinfer1::INetworkDefinition
 A network definition for input to the builder. More...
 
class  nvinfer1::IInt8Calibrator
 Application-implemented interface for calibration. More...
 
class  nvinfer1::IInt8EntropyCalibrator
 
class  nvinfer1::IInt8EntropyCalibrator2
 
class  nvinfer1::IInt8MinMaxCalibrator
 
class  nvinfer1::IInt8LegacyCalibrator
 
class  nvinfer1::IAlgorithmIOInfo
 Carries information about input or output of the algorithm. IAlgorithmIOInfo for all the input and output along with IAlgorithmVariant denotes the variation of algorithm and can be used to select or reproduce an algorithm using IAlgorithmSelector::selectAlgorithms(). More...
 
class  nvinfer1::IAlgorithmVariant
 provides a unique 128-bit identifier, which along with the input and output information denotes the variation of algorithm and can be used to select or reproduce an algorithm, using IAlgorithmSelector::selectAlgorithms() More...
 
class  nvinfer1::IAlgorithmContext
 Describes the context and requirements, that could be fulfilled by one or more instances of IAlgorithm. More...
 
class  nvinfer1::IAlgorithm
 Describes a variation of execution of a layer. An algorithm is represented by IAlgorithmVariant and the IAlgorithmIOInfo for each of its inputs and outputs. An algorithm can be selected or reproduced using AlgorithmSelector::selectAlgorithms().". More...
 
class  nvinfer1::IAlgorithmSelector
 Interface implemented by application for selecting and reporting algorithms of a layer provided by the builder. More...
 
class  nvinfer1::ITimingCache
 Class to handle tactic timing info collected from builder. More...
 
struct  nvinfer1::impl::EnumMaxImpl< PreviewFeature >
 
class  nvinfer1::IBuilderConfig
 Holds properties for configuring a builder to produce an engine. More...
 
class  nvinfer1::IBuilder
 Builds an engine from a network definition. More...
 

Namespaces

namespace  nvinfer1
 The TensorRT API version 1 namespace.
 
namespace  nvinfer1::impl
 

Typedefs

using nvinfer1::TensorFormats = uint32_t
 It is capable of representing one or more TensorFormat by binary OR operations, e.g., 1U << TensorFormat::kCHW4 | 1U << TensorFormat::kCHW32. More...
 
using nvinfer1::SliceMode = SampleMode
 
using nvinfer1::ResizeMode = InterpolationMode
 
using nvinfer1::QuantizationFlags = uint32_t
 Represents one or more QuantizationFlag values using binary OR operations. More...
 
using nvinfer1::BuilderFlags = uint32_t
 Represents one or more QuantizationFlag values using binary OR operations, e.g., 1U << BuilderFlag::kFP16 | 1U << BuilderFlag::kDEBUG. More...
 
using nvinfer1::NetworkDefinitionCreationFlags = uint32_t
 Represents one or more NetworkDefinitionCreationFlag flags using binary OR operations. e.g., 1U << NetworkDefinitionCreationFlag::kEXPLICIT_BATCH. More...
 

Enumerations

enum class  nvinfer1::LayerType : int32_t {
  nvinfer1::kCONVOLUTION = 0 , nvinfer1::kFULLY_CONNECTED = 1 , nvinfer1::kACTIVATION = 2 , nvinfer1::kPOOLING = 3 ,
  nvinfer1::kLRN = 4 , nvinfer1::kSCALE = 5 , nvinfer1::kSOFTMAX = 6 , nvinfer1::kDECONVOLUTION = 7 ,
  nvinfer1::kCONCATENATION = 8 , nvinfer1::kELEMENTWISE = 9 , nvinfer1::kPLUGIN = 10 , nvinfer1::kUNARY = 11 ,
  nvinfer1::kPADDING = 12 , nvinfer1::kSHUFFLE = 13 , nvinfer1::kREDUCE = 14 , nvinfer1::kTOPK = 15 ,
  nvinfer1::kGATHER = 16 , nvinfer1::kMATRIX_MULTIPLY = 17 , nvinfer1::kRAGGED_SOFTMAX = 18 , nvinfer1::kCONSTANT = 19 ,
  nvinfer1::kRNN_V2 = 20 , nvinfer1::kIDENTITY = 21 , nvinfer1::kPLUGIN_V2 = 22 , nvinfer1::kSLICE = 23 ,
  nvinfer1::kSHAPE = 24 , nvinfer1::kPARAMETRIC_RELU = 25 , nvinfer1::kRESIZE = 26 , nvinfer1::kTRIP_LIMIT = 27 ,
  nvinfer1::kRECURRENCE = 28 , nvinfer1::kITERATOR = 29 , nvinfer1::kLOOP_OUTPUT = 30 , nvinfer1::kSELECT = 31 ,
  nvinfer1::kFILL = 32 , nvinfer1::kQUANTIZE = 33 , nvinfer1::kDEQUANTIZE = 34 , nvinfer1::kCONDITION = 35 ,
  nvinfer1::kCONDITIONAL_INPUT = 36 , nvinfer1::kCONDITIONAL_OUTPUT = 37 , nvinfer1::kSCATTER = 38 , nvinfer1::kEINSUM = 39 ,
  nvinfer1::kASSERTION = 40 , nvinfer1::kONE_HOT = 41 , nvinfer1::kNON_ZERO = 42 , nvinfer1::kGRID_SAMPLE = 43 ,
  nvinfer1::kNMS = 44
}
 The type values of layer classes. More...
 
enum class  nvinfer1::ActivationType : int32_t {
  nvinfer1::kRELU = 0 , nvinfer1::kSIGMOID = 1 , nvinfer1::kTANH = 2 , nvinfer1::kLEAKY_RELU = 3 ,
  nvinfer1::kELU = 4 , nvinfer1::kSELU = 5 , nvinfer1::kSOFTSIGN = 6 , nvinfer1::kSOFTPLUS = 7 ,
  nvinfer1::kCLIP = 8 , nvinfer1::kHARD_SIGMOID = 9 , nvinfer1::kSCALED_TANH = 10 , nvinfer1::kTHRESHOLDED_RELU = 11
}
 Enumerates the types of activation to perform in an activation layer. More...
 
enum class  nvinfer1::PaddingMode : int32_t {
  nvinfer1::kEXPLICIT_ROUND_DOWN = 0 , nvinfer1::kEXPLICIT_ROUND_UP = 1 , nvinfer1::kSAME_UPPER = 2 , nvinfer1::kSAME_LOWER = 3 ,
  nvinfer1::kCAFFE_ROUND_DOWN = 4 , nvinfer1::kCAFFE_ROUND_UP = 5
}
 Enumerates the modes of padding to perform in convolution, deconvolution and pooling layer, padding mode takes precedence if setPaddingMode() and setPrePadding() are also used. More...
 
enum class  nvinfer1::PoolingType : int32_t { nvinfer1::kMAX = 0 , nvinfer1::kAVERAGE = 1 , nvinfer1::kMAX_AVERAGE_BLEND = 2 }
 The type of pooling to perform in a pooling layer. More...
 
enum class  nvinfer1::ScaleMode : int32_t { nvinfer1::kUNIFORM = 0 , nvinfer1::kCHANNEL = 1 , nvinfer1::kELEMENTWISE = 2 }
 Controls how shift, scale and power are applied in a Scale layer. More...
 
enum class  nvinfer1::ElementWiseOperation : int32_t {
  nvinfer1::kSUM = 0 , nvinfer1::kPROD = 1 , nvinfer1::kMAX = 2 , nvinfer1::kMIN = 3 ,
  nvinfer1::kSUB = 4 , nvinfer1::kDIV = 5 , nvinfer1::kPOW = 6 , nvinfer1::kFLOOR_DIV = 7 ,
  nvinfer1::kAND = 8 , nvinfer1::kOR = 9 , nvinfer1::kXOR = 10 , nvinfer1::kEQUAL = 11 ,
  nvinfer1::kGREATER = 12 , nvinfer1::kLESS = 13
}
 Enumerates the binary operations that may be performed by an ElementWise layer. More...
 
enum class  nvinfer1::GatherMode : int32_t { nvinfer1::kDEFAULT = 0 , nvinfer1::kELEMENT = 1 , nvinfer1::kND = 2 }
 Control form of IGatherLayer. More...
 
enum class  nvinfer1::RNNOperation : int32_t { nvinfer1::kRELU = 0 , nvinfer1::kTANH = 1 , nvinfer1::kLSTM = 2 , nvinfer1::kGRU = 3 }
 Enumerates the RNN operations that may be performed by an RNN layer. More...
 
enum class  nvinfer1::RNNDirection : int32_t { nvinfer1::kUNIDIRECTION = 0 , nvinfer1::kBIDIRECTION = 1 }
 Enumerates the RNN direction that may be performed by an RNN layer. More...
 
enum class  nvinfer1::RNNInputMode : int32_t { nvinfer1::kLINEAR = 0 , nvinfer1::kSKIP = 1 }
 Enumerates the RNN input modes that may occur with an RNN layer. More...
 
enum class  nvinfer1::RNNGateType : int32_t {
  nvinfer1::kINPUT = 0 , nvinfer1::kOUTPUT = 1 , nvinfer1::kFORGET = 2 , nvinfer1::kUPDATE = 3 ,
  nvinfer1::kRESET = 4 , nvinfer1::kCELL = 5 , nvinfer1::kHIDDEN = 6
}
 Identifies an individual gate within an RNN cell. More...
 
enum class  nvinfer1::UnaryOperation : int32_t {
  nvinfer1::kEXP = 0 , nvinfer1::kLOG = 1 , nvinfer1::kSQRT = 2 , nvinfer1::kRECIP = 3 ,
  nvinfer1::kABS = 4 , nvinfer1::kNEG = 5 , nvinfer1::kSIN = 6 , nvinfer1::kCOS = 7 ,
  nvinfer1::kTAN = 8 , nvinfer1::kSINH = 9 , nvinfer1::kCOSH = 10 , nvinfer1::kASIN = 11 ,
  nvinfer1::kACOS = 12 , nvinfer1::kATAN = 13 , nvinfer1::kASINH = 14 , nvinfer1::kACOSH = 15 ,
  nvinfer1::kATANH = 16 , nvinfer1::kCEIL = 17 , nvinfer1::kFLOOR = 18 , nvinfer1::kERF = 19 ,
  nvinfer1::kNOT = 20 , nvinfer1::kSIGN = 21 , nvinfer1::kROUND = 22
}
 Enumerates the unary operations that may be performed by a Unary layer. More...
 
enum class  nvinfer1::ReduceOperation : int32_t {
  nvinfer1::kSUM = 0 , nvinfer1::kPROD = 1 , nvinfer1::kMAX = 2 , nvinfer1::kMIN = 3 ,
  nvinfer1::kAVG = 4
}
 Enumerates the reduce operations that may be performed by a Reduce layer. More...
 
enum class  nvinfer1::SampleMode : int32_t {
  nvinfer1::kSTRICT_BOUNDS = 0 , nvinfer1::kDEFAULT = kSTRICT_BOUNDS , nvinfer1::kWRAP = 1 , nvinfer1::kCLAMP = 2 ,
  nvinfer1::kFILL = 3 , nvinfer1::kREFLECT = 4
}
 Controls how ISliceLayer and IGridSample handle out-of-bounds coordinates. More...
 
enum class  nvinfer1::TopKOperation : int32_t { nvinfer1::kMAX = 0 , nvinfer1::kMIN = 1 }
 Enumerates the operations that may be performed by a TopK layer. More...
 
enum class  nvinfer1::MatrixOperation : int32_t { nvinfer1::kNONE , nvinfer1::kTRANSPOSE , nvinfer1::kVECTOR }
 Enumerates the operations that may be performed on a tensor by IMatrixMultiplyLayer before multiplication. More...
 
enum class  nvinfer1::InterpolationMode : int32_t { nvinfer1::kNEAREST = 0 , nvinfer1::kLINEAR = 1 , nvinfer1::kCUBIC = 2 }
 Enumerates various modes of interpolation. More...
 
enum class  nvinfer1::ResizeCoordinateTransformation : int32_t { nvinfer1::kALIGN_CORNERS = 0 , nvinfer1::kASYMMETRIC = 1 , nvinfer1::kHALF_PIXEL = 2 }
 The resize coordinate transformation function. More...
 
enum class  nvinfer1::ResizeSelector : int32_t { nvinfer1::kFORMULA = 0 , nvinfer1::kUPPER = 1 }
 The coordinate selector when resize to single pixel output. More...
 
enum class  nvinfer1::ResizeRoundMode : int32_t { nvinfer1::kHALF_UP = 0 , nvinfer1::kHALF_DOWN = 1 , nvinfer1::kFLOOR = 2 , nvinfer1::kCEIL = 3 }
 The rounding mode for nearest neighbor resize. More...
 
enum class  nvinfer1::LoopOutput : int32_t { nvinfer1::kLAST_VALUE = 0 , nvinfer1::kCONCATENATE = 1 , nvinfer1::kREVERSE = 2 }
 Enum that describes kinds of loop outputs. More...
 
enum class  nvinfer1::TripLimit : int32_t { nvinfer1::kCOUNT = 0 , nvinfer1::kWHILE = 1 }
 Enum that describes kinds of trip limits. More...
 
enum class  nvinfer1::FillOperation : int32_t { nvinfer1::kLINSPACE = 0 , nvinfer1::kRANDOM_UNIFORM = 1 , nvinfer1::kRANDOM_NORMAL = 2 }
 Enumerates the tensor fill operations that may performed by a fill layer. More...
 
enum class  nvinfer1::ScatterMode : int32_t { nvinfer1::kELEMENT = 0 , nvinfer1::kND = 1 }
 Control form of IScatterLayer. More...
 
enum class  nvinfer1::BoundingBoxFormat : int32_t { nvinfer1::kCORNER_PAIRS = 0 , nvinfer1::kCENTER_SIZES = 1 }
 Representation of bounding box data used for the Boxes input tensor in INMSLayer. More...
 
enum class  nvinfer1::CalibrationAlgoType : int32_t { nvinfer1::kLEGACY_CALIBRATION = 0 , nvinfer1::kENTROPY_CALIBRATION = 1 , nvinfer1::kENTROPY_CALIBRATION_2 = 2 , nvinfer1::kMINMAX_CALIBRATION = 3 }
 Version of calibration algorithm to use. More...
 
enum class  nvinfer1::QuantizationFlag : int32_t { nvinfer1::kCALIBRATE_BEFORE_FUSION = 0 }
 List of valid flags for quantizing the network to int8. More...
 
enum class  nvinfer1::BuilderFlag : int32_t {
  nvinfer1::kFP16 = 0 , nvinfer1::kINT8 = 1 , nvinfer1::kDEBUG = 2 , nvinfer1::kGPU_FALLBACK = 3 ,
  nvinfer1::kSTRICT_TYPES = 4 , nvinfer1::kREFIT = 5 , nvinfer1::kDISABLE_TIMING_CACHE = 6 , nvinfer1::kTF32 = 7 ,
  nvinfer1::kSPARSE_WEIGHTS = 8 , nvinfer1::kSAFETY_SCOPE = 9 , nvinfer1::kOBEY_PRECISION_CONSTRAINTS = 10 , nvinfer1::kPREFER_PRECISION_CONSTRAINTS = 11 ,
  nvinfer1::kDIRECT_IO = 12 , nvinfer1::kREJECT_EMPTY_ALGORITHMS = 13 , nvinfer1::kENABLE_TACTIC_HEURISTIC = 14
}
 List of valid modes that the builder can enable when creating an engine from a network definition. More...
 
enum class  nvinfer1::MemoryPoolType : int32_t { nvinfer1::kWORKSPACE = 0 , nvinfer1::kDLA_MANAGED_SRAM = 1 , nvinfer1::kDLA_LOCAL_DRAM = 2 , nvinfer1::kDLA_GLOBAL_DRAM = 3 }
 The type for memory pools used by TensorRT. More...
 
enum class  nvinfer1::PreviewFeature : int32_t { nvinfer1::kFASTER_DYNAMIC_SHAPES_0805 = 0 , nvinfer1::kDISABLE_EXTERNAL_TACTIC_SOURCES_FOR_CORE_0805 = 1 }
 Define preview features. More...
 
enum class  nvinfer1::NetworkDefinitionCreationFlag : int32_t { nvinfer1::kEXPLICIT_BATCH = 0 , nvinfer1::kEXPLICIT_PRECISION = 1 }
 List of immutable network properties expressed at network creation time. NetworkDefinitionCreationFlag is used with createNetworkV2() to specify immutable properties of the network. Creating a network without NetworkDefinitionCreationFlag::kEXPLICIT_BATCH flag has been deprecated. More...
 

Functions

template<>
constexpr int32_t nvinfer1::EnumMax< LayerType > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< ScaleMode > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< GatherMode > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< RNNOperation > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< RNNDirection > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< RNNInputMode > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< RNNGateType > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< UnaryOperation > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< ReduceOperation > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< SampleMode > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< TopKOperation > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< MatrixOperation > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< LoopOutput > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< TripLimit > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< FillOperation > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< ScatterMode > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< BoundingBoxFormat > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< CalibrationAlgoType > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< QuantizationFlag > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< BuilderFlag > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< MemoryPoolType > () noexcept
 
template<>
constexpr int32_t nvinfer1::EnumMax< NetworkDefinitionCreationFlag > () noexcept
 
nvinfer1::IPluginRegistrynvinfer1::getBuilderPluginRegistry (nvinfer1::EngineCapability capability) noexcept
 Return the plugin registry for the given capability or nullptr if no registry exists. More...
 

Detailed Description

TensorRT Versioning follows Semantic Versioning Guidelines specified here: https://semver.org/

This is the top-level API file for TensorRT.

  Copyright © 2024 NVIDIA Corporation
  Privacy Policy | Manage My Privacy | Do Not Sell or Share My Data | Terms of Service | Accessibility | Corporate Policies | Product Security | Contact