【经验分享】TRT8|【经验分享】TRT8 vs TRT7 接口增删汇总

? 欢迎关注我的公众号 [极智视界],回复001获取Google编程规范
【【经验分享】TRT8|【经验分享】TRT8 vs TRT7 接口增删汇总】? O_o ? >_< ? o_O ? O_o ? ~_~ ? o_O
? 本文汇集了一些 TRT8 对比 TRT7 增删的接口,可能不是并非完整。
?TRT8 相对于 TRT7 的改动还是有一些,特别是 plugin 部分,以下记录一下。
1、移除的方法 ? Core Library:

DimensionType Dims::Type class DimsCHW class DimsNCHW class IOutputDimensionFormula class IPlugin class IPluginFactory class IPluginLayer class IRNNLayer IBuilder::getEngineCapability() IBuilder::allowGPUFallback() IBuilder::buildCudaEngine() IBuilder::canRunOnDLA() IBuilder::createNetwork() IBuilder::getAverageFindIterations() IBuilder::getDebugSync() IBuilder::getDefaultDeviceType() IBuilder::getDeviceType() IBuilder::getDLACore() IBuilder::getFp16Mode() IBuilder::getHalf2Mode() IBuilder::getInt8Mode() IBuilder::getMaxWorkspaceSize() IBuilder::getMinFindIterations() IBuilder::getRefittable() IBuilder::getStrictTypeConstraints() IBuilder::isDeviceTypeSet() IBuilder::reset() IBuilder::resetDeviceType() IBuilder::setAverageFindIterations() IBuilder::setDebugSync() IBuilder::setDefaultDeviceType() IBuilder::setDeviceType() IBuilder::setDLACore() IBuilder::setEngineCapability() IBuilder::setFp16Mode() IBuilder::setHalf2Mode() IBuilder::setInt8Calibrator() IBuilder::setInt8Mode() IBuilder::setMaxWorkspaceSize() IBuilder::setMinFindIterations() IBuilder::setRefittable() IBuilder::setStrictTypeConstraints() ICudaEngine::getWorkspaceSize() IMatrixMultiplyLayer::getTranspose() IMatrixMultiplyLayer::setTranspose() INetworkDefinition::addMatrixMultiply() INetworkDefinition::addPlugin() INetworkDefinition::addPluginExt() INetworkDefinition::addRNN() INetworkDefinition::getConvolutionOutputDimensionsFormula() INetworkDefinition::getDeconvolutionOutputDimensionsFormula() INetworkDefinition::getPoolingOutputDimensionsFormula() INetworkDefinition::setConvolutionOutputDimensionsFormula() INetworkDefinition::setDeconvolutionOutputDimensionsFormula() INetworkDefinition::setPoolingOutputDimensionsFormula() ITensor::getDynamicRange() TensorFormat::kNHWC8 TensorFormat::NCHW TensorFormat::kNC2HW2

?Plugins:
class INvPlugin createLReLUPlugin() createClipPlugin() PluginType struct SoftmaxTree 基于 IPluginV2DynamicExt and IPluginV2IOExt的方法

? 不再支持的 Plugin 方法:
IPluginV2DynamicExt::canBroadcastInputAcrossBatch() IPluginV2DynamicExt::isOutputBroadcastAcrossBatch() IPluginV2DynamicExt::getTensorRTVersion() IPluginV2IOExt::configureWithFormat() IPluginV2IOExt::getTensorRTVersion()

? 支持更新后的 Plugin 方法:
IPluginV2DynamicExt::configurePlugin() IPluginV2DynamicExt::enqueue() IPluginV2DynamicExt::getOutputDimensions() IPluginV2DynamicExt::getWorkspaceSize() IPluginV2IOExt::configurePlugin() IPluginV2DynamicExt::supportsFormatCombination() 代替 IPluginV2DynamicExt::supportsFormat() IPluginV2IOExt::supportsFormatCombination() 代替 IPluginV2IOExt::supportsFormat()

?Caffe Parser:
class IPluginFactory class IPluginFactoryExt setPluginFactory() setPluginFactoryExt()

?UFF Parser:
class IPluginFactory class IPluginFactoryExt setPluginFactory() setPluginFactoryExt()

2、添加的新方法
class IDequantizeLayer class IQuantizeLayer class ITimingCache IBuilder::buildSerializedNetwork() IBuilderConfig::getTimingCache() IBuilderConfig::setTimingCache() IGpuAllocator::reallocate() INetworkDefinition::addDequantize() INetworkDefinition::addQuantize() INetworkDefinition::setWeightsName() IPluginRegistry::deregisterCreator() IRefitter::getMissingWeights() IRefitter::getAllWeights() IRefitter::setNamedWeights() IResizeLayer::getCoordinateTransformation() IResizeLayer::getNearestRounding() IResizeLayer::getSelectorForSinglePixel() IResizeLayer::setCoordinateTransformation() IResizeLayer::setNearestRounding() IResizeLayer::setSelectorForSinglePixel() IScaleLayer::setChannelAxis() enum ResizeCoordinateTransformation enum ResizeMode BuilderFlag::kSPARSE_WEIGHTS TacticSource::kCUDNN TensorFormat::kDLA_HWC4 TensorFormat::kDLA_LINEAR TensorFormat::kHWC16

?以上分享了一些 TRT8 对比 TRT7 接口变化的一些信息,希望我的分享会对你的开发有一点帮助。
【公众号传送】
《【经验分享】TRT8 vs TRT7 接口增删汇总》

    推荐阅读