TPAT —— TensorRT 插件自动生成工具
TPAT 是由腾讯联合英伟达开发的 TensorRT 插件自动生成工具。
TensorRT 是当前应用最广的 GPU 推理框架,但由于支持的算子数量有限,用户面临手写插件以支持算子的痛点。而TPAT 能够支持开放神经网络交换 (ONNX) 格式所有的算子,端到端生成 TensorRT 插件,在解放人力成本的同时,性能对比手写毫不逊色。
TPAT 实现了 TensorRT 插件的全自动生成,TensorRT 的部署和上线能基本流程化不再需要人工参与。手写插件的步骤将由 TPAT 代替,TPAT 全自动生成一个算子插件耗时仅需要 30-60 分钟的时间(该时间用于搜索算子的高性能 CUDA Kernel)。
架构设计
TPAT 接受用户输入的 ONNX-Model,指定需要生成 TensorRT Plugin 的算子和 batch size,基于 TVM 深度学习编译器,对固定形状的算子进行 AutoTune,自动生成高性能的 CUDA Kernel. 将 CUDA Kernel 和 Runtime 必要的参数填充进 TensorRT Plugin 模板,生成动态链接库,可以直接加载到 TensorRT 运行。
TPAT 部分算子性能数据
使用 TPAT 自动生成 TensorRT-7.2 不支持的算子,并且用 TPAT 优化 TensorRT-7.2 原生实现性能较差的算子;
对比手写 Plugin
优化 TensorRT 原生算子
TPAT 使用案例
使用 TPAT 支持 Onehot 算子(TensorRT-7.2.2.3)
- 输入包括了 onehot 算子的 ONNX_Model、Onehot 算子的名字、batch_size
- TPAT借助 TVM的Relay 和 AutoScheduler 组件,生成高性能的 CUDA Kernel;
- 经过模板填充后直接生成可用的 onehot 算子 Plugin 的动态链接库。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
每日一博 | WebGL 的 Hello World
本文整理自 div 侠于 凹凸 2022 年技术分享,简单介绍了 WebGL 画一个基础图形的流程,希望你了解之后,在使用 3d 渲染库的时候可以少点迷糊。 四种常用的页面绘图工具— 关于 h5 页面的图形绘制,我们大多谈及的是这四种工具:html+css,svg、canvas2d、WebGL。 html+css 是最常见的绘图工具了,使用 css 绘图跟平时写页面布局一样,在制作图表的时候,我们可以用 css 把图表的样式定义好,其他的,就是根据数据的不同 ,给元素添加上不同的属性。这样的开发对于图表元素简单、数据结点少的场景非常友好。不仅可以减少开发的工具量,而且不用引入多余的代码库。但是,随时需要绘制的图形越来越多, css 代码做变得越来越复杂,加上 css 本来没有逻辑语义,代码会变得不易阅读和维护。 svg 是可缩放矢量图形,他跟 html、css 的结合很紧密,可以把 svg 当做 img 的 src ,也可以用 css 操控 svg 的属性, svg 和 html 都是文本标记语言, svg 较 html 增加了对非线性图形的支持,包括圆弧,贝塞尔曲线等。同时,svg ...
- 下一篇
GCC 编译器接受龙芯 LoongArch CPU
GCC 指导委员会 (GCC steering committee) 批准了龙芯的 LoongArch 移植,并指派了两位中国开发者作为维护者,预计会在未来几周加入到 GCC 12 稳定版本。 公告写道,目前已进入最后的技术审查和补丁批准阶段,后续的工作包括与 GCC 版本发布经理协调,以便将补丁合并到开发树,然后加入到 GCC 12 中。 LoongArch是龙芯打造的自主指令系统架构,LoongArch包括基础架构部分和向量指令、虚拟化、二进制翻译等扩展部分,近 2000 条指令。据介绍,龙芯架构不包含 MIPS 指令系统。Loongson 3 5000 系列是第一款支持此 ISA 的硬件。 LoongArch ISA 文档:https://loongson.github.io/LoongArch-Documentation/LoongArch-Vol1-EN.pdf 据称龙芯此前就一直在做 GCC 编译器的移植工作,以及对 Linux 内核的修改和对其他软件栈的支持。其中对 Linux 内核的修改被批评复制了大量 MIPS 的代码,解决了此问题后,Linux 内核支持的主要障碍变...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8编译安装MySQL8.0.19
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,CentOS8安装Elasticsearch6.8.6
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS8编译安装MySQL8.0.19
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Windows10,CentOS7,CentOS8安装Nodejs环境
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题