[发明专利]数据传输与内存管理方法、装置以及相关产品有效
申请号: | 201910738338.X | 申请日: | 2019-08-12 |
公开(公告)号: | CN110489246B | 公开(公告)日: | 2022-06-07 |
发明(设计)人: | 刘明轩;丁铭辉;张赟龙 | 申请(专利权)人: | 中科寒武纪科技股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/50 |
代理公司: | 北京维昊知识产权代理事务所(普通合伙) 11804 | 代理人: | 李波;孙新国 |
地址: | 100086 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据传输 内存 管理 方法 装置 以及 相关 产品 | ||
本申请提供一种插件间数据传输与内存管理方法、装置及相关产品,所述方法用于对插件的数据传输和内存进行管理。本申请提供的技术方案能够防止插件间数据传输过程中的数据积压,使得插件无需关注数据传输过程,而更加专注与处理自身业务逻辑,并且使得插件不会感知内存的申请和释放。
技术领域
本申请涉及信息处理技术领域,具体涉及一种数据传输与内存管理方法、装置以及相关产品。
背景技术
视频结构化相关应用通常是基于流水线思想进行开发,例如,在一种深度学习视频流处理框架中,大致可以分为视频解码、深度学习推理、图像后处理三个流水级。各级数据处理过程中存在大量的数据操作,包括内存申请、数据传输。要使得应用能够长期稳定的运行,控制好其中的数据操作至关重要。流水线上的个节点称为插件,插件是能够实现一定功能的抽象单元,其可以为一种硬件器件,也可以为一种软件应用。
在一个流水线应用中,上游插件不停的往下游插件输送数据。当上游插件的处理速度比下游插件的处理数据更快时,下游插件容易堆积过多的数据。由于较慢的下游插件是整个流水线吞吐速率的瓶颈,这些堆积的数据是无意义的,只会造成内存的疯狂占用。当机器内存被占满,更会导致流水线整体性能下降,甚至宕机。
而且,在源源不断的文件流中,数据可以认为是无穷无尽的,需要控制好内存的申请和释放时机。频繁的申请和释放内存,对插件性能也有较大的损耗。
发明内容
本申请实施例提供了一种数据传输与内存管理方法、装置以及相关产品,防止插件间数据传输过程中的数据积压,并且使得插件不会感知内存的申请和释放。
第一方面,提供一种数据传输与内存管理方法,包括:
基于第一插件的第一连接器识别参数,将所述第一插件识别为上游插件;
获取最大申请内存块数量的指定命令;
接收所述上游插件的内存申请,所申请的内存用于存放所述上游插件的输出数据;以及
基于所述最大申请内存块数量对所述上游插件的申请做出响应。
第二方面,提供一种数据传输与内存管理装置,所述装置包括:
第一识别单元,用于基于第一插件的第一连接器识别参数,将所述第一插件识别为上游插件;
第一获取单元,用于获取最大申请内存块数量的指定命令;
接收单元,用于接收所述上游插件的内存申请,所申请的内存用于存放所述上游插件的输出数据;以及
响应单元,用于基于所述最大申请内存块数量对所述上游插件的申请做出响应。
第三方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面的方法。
第四方面,提供一种计算机可读存储介质,其存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行第一方面提供的方法。
第五方面,提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行第一方面提供的方法。
本申请提供的技术方案抽象出一种连接器,用于控制和管理插件的内存申请和释放以及插件间的数据传输,使得插件只需专注自身的数据处理,而无须考虑内存的申请和释放,并且能够解决由于插件间处理能力的差别导致的造成的数据传输过程中的数据堆积、系统资源被无意义地占用的问题。从而,本申请能够提供防止插件间数据传输过程中的数据积压,使得插件无需关注数据传输过程,而更加专注与处理自身业务逻辑,并且使得插件不会感知内存的申请和释放的优点。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科寒武纪科技股份有限公司,未经中科寒武纪科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910738338.X/2.html,转载请声明来源钻瓜专利网。