bert 推理加速 使用tensorRt

之前对bert轻量化,显存占用减少一半。但是推理速度仍然没多大变化。因此 计划通过tensorRT完成模型的推理加速。

轻量化之前链接: https://www.cnblogs.com/dhName/p/12628828.html

 

 

1. 首先,了解一下tensorTR是干什么的,这篇文章写得很好。

https://www.cnblogs.com/qccz123456/p/11767858.html

https://arleyzhang.github.io/articles/7f4b25ce/

本人猜想,Nvidia官方提出tensorrt的目的是为了更好的融合深度学习框架和GPU.。tensorflow、pytorch等深度学习框架市场战场率太大,而GPU去靠近哪一个框架都是一种损失,因此他们挣了一个tensorRT,这个东西毕竟自己开发的,更能适合自己的GPU.在训练方面,仍使用tensorflow等深度学习框架,而推理阶段,只需要把模型build成tensorRT自己的类型,在GPu上申请一个空间,用于存放推理时候的占用,然后推理完后再递给GPU即可。

所以这个东西更像一个桥梁,使模型能更好的兼容GPU (毕竟tensorRT和Gpu都是人家的,兼容性肯定比谷歌的tensorflow对nvidia的gpu兼容好),在推理的时候加速。

 

1.  https://github.com/NVIDIA/TensorRT

参照build流程,便可以完成我们的tensorRT的编译。环境踩坑环节不介绍。

 2.

https://github.com/NVIDIA/TensorRT

参考官方文档,

https://github.com/NVIDIA/TensorRT/tree/master/demo/BERT  中便是对Bert的加速。

 

其中,

Quick Start Guide

章节,详细介绍了使用教程,3可以省略,替换为我们自己的bert模型。

 

 

 

 

 

posted @ 2020-08-20 22:00  _Meditation  阅读(1632)  评论(0编辑  收藏  举报