欢迎关注我的公众号 [极智视界],回复001获取Google编程规范
本文汇集了一些 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 接口增删汇总》