[发明专利]推理服务组件的运算方法和TensorRT推理服务组件在审
| 申请号: | 202210004322.8 | 申请日: | 2022-01-04 |
| 公开(公告)号: | CN114327958A | 公开(公告)日: | 2022-04-12 |
| 发明(设计)人: | 徐守奎;陈舟锋;王义锋;沈炯行 | 申请(专利权)人: | 新华智云科技有限公司 |
| 主分类号: | G06F9/54 | 分类号: | G06F9/54;G06N5/04 |
| 代理公司: | 杭州裕阳联合专利代理有限公司 33289 | 代理人: | 田金霞 |
| 地址: | 310012 浙江省杭州市*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 推理 服务 组件 运算 方法 tensorrt | ||
本发明披露了一种数据处理技术领域的推理服务组件的运算方法和TensorRT推理服务组件,具体包括:接口层,用于待处理数据和推理结果数据与外部的交互;推理层,包含第一运算队列,所述第一运算队列包括一组以上第一运算对象,每一所述第一运算对象有对应连接的TensorRT对象;每一所述第一运算对象包括预设的推理服务模型;调度层,从所述接口层获取待处理数据,从所述推理层获取推理输出结果;调取所述第一运算队列的所述第一运算对象,根据所述第一运算对象执行推理服务;释放所述第一运算对象至第一运算队列。插件层,所述插件层连接所述推理层,所述插件层用于提供推理服务模型。本技术方案使TensorRT调用更加灵活方便。
技术领域
本发明涉及数据处理技术领域,具体涉及基于TensorRT的推理服务组件和运算方法。
背景技术
目前存在基于tensorflow、pytorch等深度学习框架直接进行推理服务构建,或基于tensorflow-serving、onnx-runtime、torch-jit等官方推荐组件构建推理模块,上述两种方案在推理服务过程中有以下缺陷:第一个方案灵活性比较好,但普遍性能不高,并且大多基于python语言进行开发,优化空间有限。第二个方案,性能较第一种有很大的提高,但该组件灵活性不够,使用方法须遵守组件要求,如:前后处理必须单独实现,推理模块的通信需要基于http、grpc协议通信;这在图像场景下,网络的延时对整体延时的影响大大增加,并且基于该组件进行改造的阻力也较大。
发明内容
本发明针对现有技术中的缺点,提供了一种灵活性更高的推理服务组件。
一种TensorRT推理服务组件,包括:
接口层,用于待处理数据和推理结果数据与外部的交互;
推理层,包含第一运算队列,所述第一运算队列包括一组以上第一运算对象,每一所述第一运算对象有对应连接的TensorRT对象;每一所述第一运算对象包括预设的推理服务模型;
调度层,从所述接口层获取待处理数据,从所述推理层获取推理输出结果;调取所述第一运算队列的所述第一运算对象,根据所述第一运算对象执行推理服务;释放所述第一运算对象至第一运算队列。
可选的,还包括插件层,所述插件层连接所述推理层,所述插件层用于提供推理服务模型。
本发明针对现有技术中的缺点,进一步提供了一种灵活性更高的推理服务运算方法,包括以下步骤:
构建一组以上第一运算对象,获得第一运算队列;
将推理服务模型连接每一所述第一运算对象;
连接所述第一运算对象和TensorRT对象接口,基于所述第一运算对象形成TensorRT对象队列;
获取待处理数据,从所述第一运算队列调取第一运算对象;
将所述待处理数据迁移至显存后,通过所述第一运算对象与所述TensorRT对象实现交互;
获取推理输出结果,将所述推理输出结果迁移至内存输出;
释放所述第一运算对象至第一运算队列。
具体的,所述推理服务模型的初始化流程,包括步骤:
序列化所述推理服务模型,保存输入尺寸、输入数据和输出尺寸计算输出的数据;
加载模型,解析所述推理服务模型;
分配内存和显存,封装并映射至第一运算对象加入所述第一运算队列。
具体的,所述第一运算对象的调取和释放的方法,包括步骤:
调取第一运算队列中位于首位的第一运算对象;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于新华智云科技有限公司,未经新华智云科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210004322.8/2.html,转载请声明来源钻瓜专利网。





