NVIDIA DeepStream SDK API Reference

9.0 Release
nvdsinfer::TrtModelBuilder Class Reference

Detailed Description

Helper class to build models and generate the TensorRT ICudaEngine required for inference.

This class will parse models using the nvdsinfer::IModelParser interface and then build the model engine using nvinfer1::IBuilder's BuilderConfig APIs based on initialization parameters passed to NvDsInferContext. Alternatively, this class can also deserialize an existing serialized engine to generate the ICudaEngine.

Definition at line 254 of file sources/libs/nvdsinfer/nvdsinfer_model_builder.h.

Public Member Functions

 TrtModelBuilder (int gpuId, nvinfer1::ILogger &logger, const std::shared_ptr< DlLibHandle > &dlHandle=nullptr, bool isEngineFile=false)
 
 ~TrtModelBuilder ()
 
void setInt8Calibrator (std::unique_ptr< nvinfer1::IInt8Calibrator > &&calibrator)
 
std::unique_ptr< TrtEnginebuildModel (const NvDsInferContextInitParams &initParams, std::string &suggestedPathName)
 
std::unique_ptr< TrtEnginebuildEngine (nvinfer1::INetworkDefinition &network, BuildParams &options)
 
NvDsInferStatus serializeEngine (const std::string &path, nvinfer1::ICudaEngine &engine)
 
std::unique_ptr< TrtEnginedeserializeEngine (const std::string &path, int dla=-1)
 
 TrtModelBuilder (int gpuId, nvinfer1::ILogger &logger, const std::shared_ptr< DlLibHandle > &dlHandle=nullptr, bool isEngineFile=false)
 
 ~TrtModelBuilder ()
 
void setInt8Calibrator (std::unique_ptr< nvinfer1::IInt8Calibrator > &&calibrator)
 
std::unique_ptr< TrtEnginebuildModel (const NvDsInferContextInitParams &initParams, std::string &suggestedPathName)
 
std::unique_ptr< TrtEnginebuildEngine (nvinfer1::INetworkDefinition &network, BuildParams &options)
 
NvDsInferStatus serializeEngine (const std::string &path, nvinfer1::ICudaEngine &engine)
 
std::unique_ptr< TrtEnginedeserializeEngine (const std::string &path, int dla=-1)
 

Friends

class BuildParams
 
class ImplicitBuildParams
 
class ExplicitBuildParams
 

Constructor & Destructor Documentation

◆ TrtModelBuilder() [1/2]

nvdsinfer::TrtModelBuilder::TrtModelBuilder ( int  gpuId,
nvinfer1::ILogger &  logger,
const std::shared_ptr< DlLibHandle > &  dlHandle = nullptr,
bool  isEngineFile = false 
)

◆ ~TrtModelBuilder() [1/2]

nvdsinfer::TrtModelBuilder::~TrtModelBuilder ( )
inline

◆ TrtModelBuilder() [2/2]

nvdsinfer::TrtModelBuilder::TrtModelBuilder ( int  gpuId,
nvinfer1::ILogger &  logger,
const std::shared_ptr< DlLibHandle > &  dlHandle = nullptr,
bool  isEngineFile = false 
)

◆ ~TrtModelBuilder() [2/2]

nvdsinfer::TrtModelBuilder::~TrtModelBuilder ( )
inline

Member Function Documentation

◆ buildEngine() [1/2]

std::unique_ptr<TrtEngine> nvdsinfer::TrtModelBuilder::buildEngine ( nvinfer1::INetworkDefinition &  network,
BuildParams options 
)

◆ buildEngine() [2/2]

std::unique_ptr<TrtEngine> nvdsinfer::TrtModelBuilder::buildEngine ( nvinfer1::INetworkDefinition &  network,
BuildParams options 
)

◆ buildModel() [1/2]

std::unique_ptr<TrtEngine> nvdsinfer::TrtModelBuilder::buildModel ( const NvDsInferContextInitParams initParams,
std::string &  suggestedPathName 
)

◆ buildModel() [2/2]

std::unique_ptr<TrtEngine> nvdsinfer::TrtModelBuilder::buildModel ( const NvDsInferContextInitParams initParams,
std::string &  suggestedPathName 
)

◆ deserializeEngine() [1/2]

std::unique_ptr<TrtEngine> nvdsinfer::TrtModelBuilder::deserializeEngine ( const std::string &  path,
int  dla = -1 
)

◆ deserializeEngine() [2/2]

std::unique_ptr<TrtEngine> nvdsinfer::TrtModelBuilder::deserializeEngine ( const std::string &  path,
int  dla = -1 
)

◆ serializeEngine() [1/2]

NvDsInferStatus nvdsinfer::TrtModelBuilder::serializeEngine ( const std::string &  path,
nvinfer1::ICudaEngine &  engine 
)

◆ serializeEngine() [2/2]

NvDsInferStatus nvdsinfer::TrtModelBuilder::serializeEngine ( const std::string &  path,
nvinfer1::ICudaEngine &  engine 
)

◆ setInt8Calibrator() [1/2]

void nvdsinfer::TrtModelBuilder::setInt8Calibrator ( std::unique_ptr< nvinfer1::IInt8Calibrator > &&  calibrator)
inline

◆ setInt8Calibrator() [2/2]

void nvdsinfer::TrtModelBuilder::setInt8Calibrator ( std::unique_ptr< nvinfer1::IInt8Calibrator > &&  calibrator)
inline

Friends And Related Function Documentation

◆ BuildParams

◆ ExplicitBuildParams

◆ ImplicitBuildParams


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