TensorRT
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
nvinfer1::IBuilder Class Referenceabstract

Builds an engine from a network definition. More...

#include <NvInfer.h>

Public Member Functions

virtual
nvinfer1::INetworkDefinition
createNetwork ()=0
 Create a network definition object. More...
 
virtual void setMaxBatchSize (int batchSize)=0
 Set the maximum batch size. More...
 
virtual int getMaxBatchSize () const =0
 Get the maximum batch size. More...
 
virtual void setMaxWorkspaceSize (std::size_t workspaceSize)=0
 Set the maximum workspace size. More...
 
virtual std::size_t getMaxWorkspaceSize () const =0
 Get the maximum workspace size. More...
 
virtual void setHalf2Mode (bool mode)=0
 Set whether half2 mode is used. More...
 
virtual bool getHalf2Mode () const =0
 Query whether half2 mode is used. More...
 
virtual void setDebugSync (bool sync)=0
 Set whether the builder should use debug synchronization. More...
 
virtual bool getDebugSync () const =0
 Query whether the builder will use debug synchronization. More...
 
virtual void setMinFindIterations (int minFind)=0
 Set the number of minimization iterations used when timing layers. More...
 
virtual int getMinFindIterations () const =0
 Query the number of minimzation iterations. More...
 
virtual void setAverageFindIterations (int avgFind)=0
 Set the number of minimization iterations used when timing layers. More...
 
virtual int getAverageFindIterations () const =0
 Query the number of averaging iterations. More...
 
virtual nvinfer1::ICudaEnginebuildCudaEngine (nvinfer1::INetworkDefinition &network)=0
 Build a CUDA engine from a network definition. More...
 
virtual bool platformHasFastFp16 () const =0
 Determine whether the platform has fast native fp16.
 
virtual bool platformHasFastInt8 () const =0
 Determine whether the platform has fast native int8.
 
virtual void destroy ()=0
 Destroy this object.
 
virtual void setInt8Mode (bool mode)=0
 Set the maximum value for a region. More...
 
virtual bool getInt8Mode () const =0
 Query whether Int8 mode is used. More...
 
virtual void setInt8Calibrator (IInt8Calibrator *calibrator)=0
 Set Int8 Calibration interface.
 
virtual void setGpuAllocator (IGpuAllocator *allocator)=0
 Set the GPU allocator. More...
 
virtual void setFp16Mode (bool mode)=0
 Set whether or not 16-bit kernels are permitted. More...
 
virtual bool getFp16Mode () const =0
 Query whether 16-bit kernels are permitted. More...
 

Detailed Description

Builds an engine from a network definition.

Member Function Documentation

virtual nvinfer1::ICudaEngine* nvinfer1::IBuilder::buildCudaEngine ( nvinfer1::INetworkDefinition network)
pure virtual

Build a CUDA engine from a network definition.

See Also
INetworkDefinition ICudaEngine
virtual nvinfer1::INetworkDefinition* nvinfer1::IBuilder::createNetwork ( )
pure virtual

Create a network definition object.

See Also
INetworkDefinition
virtual int nvinfer1::IBuilder::getAverageFindIterations ( ) const
pure virtual

Query the number of averaging iterations.

See Also
setAverageFindIterations()
virtual bool nvinfer1::IBuilder::getDebugSync ( ) const
pure virtual

Query whether the builder will use debug synchronization.

See Also
setDebugSync()
virtual bool nvinfer1::IBuilder::getFp16Mode ( ) const
pure virtual

Query whether 16-bit kernels are permitted.

See Also
setFp16Mode()
virtual bool nvinfer1::IBuilder::getHalf2Mode ( ) const
pure virtual

Query whether half2 mode is used.

See Also
setHalf2Mode()
Deprecated:
This function is superseded by getFp16Mode.
virtual bool nvinfer1::IBuilder::getInt8Mode ( ) const
pure virtual

Query whether Int8 mode is used.

See Also
setInt8Mode()
virtual int nvinfer1::IBuilder::getMaxBatchSize ( ) const
pure virtual

Get the maximum batch size.

Returns
The maximum batch size.
See Also
setMaxBatchSize()
virtual std::size_t nvinfer1::IBuilder::getMaxWorkspaceSize ( ) const
pure virtual

Get the maximum workspace size.

Returns
The maximum workspace size.
See Also
setMaxWorkspaceSize()
virtual int nvinfer1::IBuilder::getMinFindIterations ( ) const
pure virtual

Query the number of minimzation iterations.

See Also
setMinFindIterations()
virtual void nvinfer1::IBuilder::setAverageFindIterations ( int  avgFind)
pure virtual

Set the number of minimization iterations used when timing layers.

When timing layers, the builder minimizes over a set of average times for layer execution. This parameter controls the number of iterations used in averaging.

See Also
getAverageFindIterations()
virtual void nvinfer1::IBuilder::setDebugSync ( bool  sync)
pure virtual

Set whether the builder should use debug synchronization.

If this flag is true, the builder will synchronize after timing each layer, and report the layer name. It can be useful when diagnosing issues at build time.

virtual void nvinfer1::IBuilder::setFp16Mode ( bool  mode)
pure virtual

Set whether or not 16-bit kernels are permitted.

During engine build fp16 kernels will also be tried when this mode is enabled.

Parameters
modeWhether 16-bit kernels are permitted.
See Also
getFp16Mode()
virtual void nvinfer1::IBuilder::setGpuAllocator ( IGpuAllocator allocator)
pure virtual

Set the GPU allocator.

Parameters
allocatorSet the GPU allocator to be used by the builder. All GPU memory acquired will use this allocator. If NULL is passed, the default allocator will be used.

Default: uses cudaMalloc/cudaFree.

Note
This allocator will be passed to any engines created via the builder; thus the lifetime of the allocator must span the lifetime of those engines as well as that of the builder. If nullptr is passed, the default allocator will be used.
virtual void nvinfer1::IBuilder::setHalf2Mode ( bool  mode)
pure virtual

Set whether half2 mode is used.

half2 mode is a paired-image mode that is significantly faster for batch sizes greater than one on platforms with fp16 support.

Parameters
modeWhether half2 mode is used.
See Also
getHalf2Mode()
Deprecated:
This function is superseded by setFp16Mode.
virtual void nvinfer1::IBuilder::setInt8Mode ( bool  mode)
pure virtual

Set the maximum value for a region.

Used for INT8 mode compression.

virtual void nvinfer1::IBuilder::setMaxBatchSize ( int  batchSize)
pure virtual

Set the maximum batch size.

Parameters
batchSizeThe maximum batch size which can be used at execution time, and also the batch size for which the engine will be optimized.
See Also
getMaxBatchSize()
virtual void nvinfer1::IBuilder::setMaxWorkspaceSize ( std::size_t  workspaceSize)
pure virtual

Set the maximum workspace size.

Parameters
workspaceSizeThe maximum GPU temporary memory which the engine can use at execution time.
See Also
getMaxWorkspaceSize()
virtual void nvinfer1::IBuilder::setMinFindIterations ( int  minFind)
pure virtual

Set the number of minimization iterations used when timing layers.

When timing layers, the builder minimizes over a set of average times for layer execution. This parameter controls the number of iterations used in minimzation.

See Also
getMinFindIterations()

The documentation for this class was generated from the following file: