[发明专利]内存映射文件清理方法、装置、电子设备及存储介质有效
申请号: | 202011105185.4 | 申请日: | 2020-10-15 |
公开(公告)号: | CN112269655B | 公开(公告)日: | 2023-01-13 |
发明(设计)人: | 陈威行;刘红雨;于佃海;高铁柱 | 申请(专利权)人: | 北京百度网讯科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/54 |
代理公司: | 北京鸿德海业知识产权代理有限公司 11412 | 代理人: | 谷春静 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 映射 文件 清理 方法 装置 电子设备 存储 介质 | ||
本申请公开了内存映射文件清理方法、装置、电子设备及存储介质,涉及深度学习等人工智能领域,其中的方法可包括:源进程构建写入内存管理类;源进程利用写入内存管理类执行以下第一处理:创建内存映射文件,并针对内存映射文件进行共享内存映射及向内存映射文件中写入共享内存数据;其中,内存映射文件用于使目标进程构建的读取内存管理类重建共享内存数据,读取内存管理类还用于在程序正常退出的析构时清理内存映射文件。应用本申请所述方案,可节省人力成本及提升处理效率等。
技术领域
本申请涉及人工智能技术领域,特别涉及深度学习领域的内存映射文件清理方法、装置、电子设备及存储介质。
背景技术
为了提高深度学习框架的数据处理效率,可使用多进程并行处理数据,比如,在训练模型从磁盘载入数据时,为了提高数据载入效率,可支持多进程载入数据,相应地,需要支持进程间数据共享,才能达到理想的数据异步处理效率。
由于进程间地址空间并不共享,因此需要使用共享内存技术支持进程间的数据传输。在Unix操作系统中,较大的进程间数据共享需要使用文件映射。使用文件映射,即创建共享内存时,需要在磁盘上创建对应的内存映射文件。
内存回收和内存映射文件回收是分离的两个过程,系统能够在程序退出时自动回收内存,但内存映射文件却需要编程人员手动调用接口删除(即清理),当内存映射文件较多时,这种方式需要较大的人力成本,且效率低下等。
发明内容
本申请提供了内存映射文件清理方法、装置、电子设备及存储介质。
一种内存映射文件清理方法,包括:
源进程构建写入内存管理类;
所述源进程利用所述写入内存管理类执行以下第一处理:创建内存映射文件,并针对所述内存映射文件进行共享内存映射及向所述内存映射文件中写入共享内存数据;
其中,所述内存映射文件用于使目标进程构建的读取内存管理类重建共享内存数据,所述读取内存管理类还用于在程序正常退出的析构时清理所述内存映射文件。
一种内存映射文件清理方法,包括:
目标进程构建读取内存管理类;
所述目标进程利用所述读取内存管理类执行以下第二处理:根据内存映射文件重建共享内存数据,并在程序正常退出的析构时清理所述内存映射文件;
其中,所述内存映射文件为源进程利用写入内存管理类创建、并进行共享内存映射及写入共享内存数据后的内存映射文件。
一种内存映射文件清理装置,应用于源进程中,包括:第一处理模块;
所述第一处理模块,用于构建写入内存管理类,利用所述写入内存管理类执行以下第一处理:创建内存映射文件,并针对所述内存映射文件进行共享内存映射及向所述内存映射文件中写入共享内存数据;其中,所述内存映射文件用于使目标进程构建的读取内存管理类重建共享内存数据,所述读取内存管理类还用于在程序正常退出的析构时清理所述内存映射文件。
一种内存映射文件清理装置,应用于目标进程中,包括:第三处理模块;
所述第三处理模块,用于构建读取内存管理类,利用所述读取内存管理类执行以下第二处理:根据内存映射文件重建共享内存数据,并在程序正常退出的析构时清理所述内存映射文件;其中,所述内存映射文件为源进程利用写入内存管理类创建、并进行共享内存映射及写入共享内存数据后的内存映射文件。
一种电子设备,包括:
至少一个处理器;以及:
与所述至少一个处理器通信连接的存储器;其中:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京百度网讯科技有限公司,未经北京百度网讯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011105185.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:应用于道路施工作业的防撞缓冲车
- 下一篇:一种音圈绕线装置及其控制方法