[发明专利]一种多类传感器数据在控制器中零拷贝的方法和装置有效
申请号: | 202211146672.4 | 申请日: | 2022-09-20 |
公开(公告)号: | CN115220936B | 公开(公告)日: | 2023-01-10 |
发明(设计)人: | 冯权;韩正勇;华炜;马也驰;张顺 | 申请(专利权)人: | 之江实验室 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 杭州浙科专利事务所(普通合伙) 33213 | 代理人: | 孙孟辉 |
地址: | 311100 浙江省杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 传感器 数据 控制器 拷贝 方法 装置 | ||
本发明公开一种多类传感器数据在控制器中零拷贝的方法和装置,该方法为:模块A创建并初始化两块共享内存;初始化为异构平台框架的API接口和软件包接口;创建模块B,打开共享文件并映射到虚拟地址空间,同时获取到传感器的最新数据,得到传感器数据地址;创建模块C,根据传感器数据地址,生成系统内存数据类型对象,保存该地址与生成的对象的映射关系;将系统内存数据类型对象转化为软件包接口支持的类型对象,再创建新的类型对象,保存图片地址与新的类型对象的映射关系;创建并获取框架支持的内存对象,保存传感器数据地址与该内存对象的映射关系;根据上述两个映射关系,数据使用程序直接获取到新的类型对象和内存对象,实现数据零拷贝。
技术领域
本发明涉及人工智能领域算法模块的优化应用,尤其涉及一种多类传感器数据在控制器中零拷贝的方法和装置。
背景技术
人工智能领域的快速发展,让大量的应用算法能够在控制器中部署实现,随着各类算法的复杂度不断增加,消耗了越来越多的控制器资源,如何更好地优化各类基础模块,让算法模块在控制器中能更好地应用越来越重要。
现阶段的各类算法模块在控制器中的应用部署,大部分都是首先获取各类传感器的数据,
在CPU端对数据进行预处理操作,处理完的数据拷贝到GPU,在GPU端对各类算法进行推理执行,也有将获取的数据直接拷贝到GPU端做预处理和后续的推理执行操作。这两种实现方式都会带来一些问题。首先拷贝这个操作带来了很大的资源浪费,特别是对于自动驾驶领域,每个控制器通常连接着多个摄像头,每个摄像头的帧率通常为20~40帧,大量的拷贝操作使得CPU资源被占用,影响了其他模块的效率。另外,不管是通过CPU实现的拷贝还是通过DMA实现的拷贝,都会带来延时,而对于监控、无人驾驶、车路协同等领域,这些延时会带来更大的预测不准确性。
发明内容
为了解决现有技术中存在的上述技术问题,本发明提出了一种多类传感器数据在控制器中零拷贝的方法和装置,其具体技术方案如下:
一种多类传感器数据在控制器中零拷贝的方法,包括以下步骤:
步骤一,在控制器内存RAM中,模块A通过共享内存文件名创建并初始化两块共享内存来保存并管理不同传感器的数据;
步骤二,将为异构平台编写程序的框架的API接口和对共享内存进行参数设置的软件包接口初始化;
步骤三,创建模块B,打开共享文件并映射到虚拟地址空间,同时获取到传感器的最新数据,得到传感器数据地址;
步骤四,创建模块C并初始化,根据传感器数据地址,生成作为缓冲帧的系统内存数据类型对象,保存该地址与生成的对象的映射关系;
步骤五,将系统内存数据类型对象转化为软件包接口支持的类型对象,通过软件包接口,创建新的类型对象,保存图片地址与新的类型对象的映射关系;
步骤六,根据新的类型对象和框架的API参数,创建并获取框架支持的内存对象,保存传感器数据地址与该内存对象的映射关系;
步骤七,根据传感器数据地址与新的类型对象的映射关系和不同传感器数据与内存对象的映射关系,数据使用程序直接获取到新的类型对象和内存对象,实现数据零拷贝。
进一步的,所述两块共享内存包括第一块共享内存和第二块共享内存,所述第一块共享内存用来保存传感器的数据,设置成多个环形的缓冲区,每个缓冲区域保存一路传感器的数据,保存满后,新的传感器数据依次覆盖旧的数据;所述第二块共享内存,存放传感器数据帧相关的信息,用来管理第一块共享内存。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于之江实验室,未经之江实验室许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211146672.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置