(官方教程笔记)TensorRT 教程 | 基于 8.2.3 版本 | 第二部分

  • Post author:
  • Post category:其他


教程地址:

TensorRT 教程 | 基于 8.2.3 版本 | 第二部分



TenorRT 常用的五个开发辅助工具

在这里插入图片描述

本部分的问题:

在这里插入图片描述



1 trtexec

  • 功能:几乎打包了所有TensorRT脚本的功能,并且拓展了丰富的推理测试功能

    在这里插入图片描述



1.1 trtexec常用选项

  • 构建阶段

    在这里插入图片描述

第三行是DynamicShape模式需要使用的

  • 运行阶段

    在这里插入图片描述

    性能测试:

    在这里插入图片描述



2 Netron(网络结构可视化)

在这里插入图片描述



要解决的问题

在这里插入图片描述



3 onnx-graphsurgeon(修改网络)

在这里插入图片描述


需要手工修改网络的情形:

    1. 冗余节点

      举例(

      左图

      ):Conv Add ReLU 等节点之间存在很多Transpose和Squeeze以及Unsqueeze节点,会导致Conv Add ReLU 等节点不能很好的融合。

      办法:改为中间的形式,把Transpose和Squeeze以及Unsqueeze节点移动到两端。从而使得算子进行融合,减少数据的拷贝。

      举例(

      右图

      ):是一个LayerNorm结构,但是在TensorRT中需要花费12个节点。

      办法:手工模块化为一个plugin。

      ![在这里插入图片描述](https://img-blog.csdnimg.cn/31cf10c5a3144aed957645e84d13155c.png
    1. 该计算图编辑工具的功能

      在这里插入图片描述
    1. 使用的例子

      在这里插入图片描述

      举例如下:

      在这里插入图片描述

      在这里插入图片描述

      查看Add节点的上下游:

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述



4 深度学习模型的调试器 polygraphy



要解决的问题

在这里插入图片描述



功能

在这里插入图片描述



4.1 polygraphy 的主要模式



4.1.1 Run模式
在这里插入图片描述

在这里插入图片描述



4.1.2 Inspect模式

![在这里插入图片描述](https://img-blog.csdnimg.cn/357fb8cc44f146beada94380341de66f.png
在这里插入图片描述

在这里插入图片描述



4.1.3 surgeon模式

TensorFlow 示例:



4.1.4 其它

在这里插入图片描述



5 性能调试工具 night systems

解决的问题:

在这里插入图片描述

功能:

在这里插入图片描述



5.1 举例

在这里插入图片描述

在这里插入图片描述

下面是各部分的TimeLine:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述



版权声明:本文为qq_22487889原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。