tensorrt8.0主要功能和增强功能梳理

tensorrt8.0.1.6版本

新增功能

  • 操作系统:新增CentOS 8.3、Ubuntu 20.04 支持;
  • python版本:新增3.9支持;
  • IResizeLayer:新增更多的调整大小模式;注释:The implements the resize operation on an input tensor
  • Builder Layer Timing Cache :8.0开始时序缓存可以由在具有相同 CUDA 设备属性和 CUDA/TensorRT 版本的设备上运行的构建器实例进行序列化和加载;解析:构建引擎耗时,因为构建器需要为每一层计算候选内核时间。为减少构建器时间,TensorRT设置一个层计时缓存,以在构建器阶段保留层分析信息。如果其他层有相同的输入/输出张量和配置层,跳过分析直接使用;
  • **Structured Sparsity :**卷积及全连接层稀疏化;局限性:仅限于NVIDIA Ampere GPU,为获得更高的推理性能,卷积、全连接权重需满足以下要求,假设核权重具有形状[K、C、R、S] 和 C% 4 == 0:
    for r in R:
        for s in S:
            for c_packed in range(0, C // 4):
                num_zeros(weights[k, c_packed*4:(c_packed+1)*4, r, s]) >= 2

分析:对于每个输出通道和内核权重中的每个像素空间,每4个输入通道必须至少有2个零。这个条件很绕,一时之间感觉难以理解。

  • new layers: IQuantizeLayer and IDequantizeLayer;用于显示制定操作和数据缓冲区的精度;onnx的量化与去量化被映射到这些层,从而支持使用量化感知训练方法训练网络;
  • **QuartzNet 优化:**在A100上实现高达1.8倍的端到端性能提升;不适用于Jetson平台;1D fused depthwise + pointwise convolution kernel;
  • 增加对onnx算子支持:Celu, CumSum, EyeLike, GatherElements, GlobalLpPool, GreaterOrEqual, LessOrEqual, LpNormalization, LpPool, ReverseSequence, and SoftmaxCrossEntropyLoss;
  • DLA:int8下的激活函数Sigmoid/Tanh支持;
  • 兼容性:cuDNN8.2.1 tensorflow1.15.5 pytorch1.8.1 onnx1.8.0 cuda[11.3/11.2/11.1/11.0/10.2]

你可能感兴趣的:(tensorrt)