[发明专利]内存分配方法及设备有效
| 申请号: | 201710403524.9 | 申请日: | 2017-06-01 |
| 公开(公告)号: | CN108874532B | 公开(公告)日: | 2020-11-06 |
| 发明(设计)人: | 贾开 | 申请(专利权)人: | 北京旷视科技有限公司;北京迈格威科技有限公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50 |
| 代理公司: | 北京市柳沈律师事务所 11105 | 代理人: | 彭久云 |
| 地址: | 100080 北京市*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 内存 分配 方法 设备 | ||
一种内存分配方法及设备,该方法包括计算冲突请求间的相对内存位置关系;以及根据相对内存位置关系计算内存分配的最优解。该方法可以得到一个较优的内存分配方案,且分配方案的代价小、运行速度快。
技术领域
本公开的实施例涉及人工智能(AI)领域,具体涉及一种内存分配方法及设备。
背景技术
深度学习极大地促进了人工智能的发展,而目前深度模型的训练系统大多是基于数据流图计算的引擎,因此相关的优化就变得极为重要。数据流图的特点是数据节点几乎都是大型的张量,由于训练过程一般需要计算梯度,数据流图包含正向计算和求导两个过程,节点数量众多,因此内存的优化就极为重要。
发明内容
本公开的实施例提供一种内存分配方法,包括:计算冲突请求间的相对内存位置关系;以及根据所述相对内存位置关系计算内存分配的最优解。
例如,在本公开实施例提供的内存分配方法中,所述冲突请求是在同一时间要求占用的内存地址有重叠的请求。
例如,在本公开实施例提供的内存分配方法中,所述计算冲突请求间的相对内存位置关系,包括:将每个所述请求转换为一个分配事件和一个释放事件,并按时间对所述每个分配事件和所述每个释放事件排序,并获取每个所述事件对应的内存大小;初始化当前已分配的内存块集合、当前空余内存块集合以及内存块相对关系链表;处理所述每个所述分配事件和每个所述释放事件;根据所述分配事件和所述释放事件的处理结果获取所述相对内存位置关系。
例如,在本公开实施例提供的内存分配方法中,所述初始化当前已分配的内存块集合、当前空余内存块集合以及内存块相对关系链表,包括:设置当前已分配的内存块集合为空集;设置当前空余内存块集合为空集;对于每个所述请求,设置所述内存块相对关系链表中内存块的起始地址比所述请求对应的内存块的起始地址低的第一个请求为空、内存块的起始地址比所述请求对应的内存块的起始地址高的第一个请求为空。
例如,在本公开实施例提供的内存分配方法中,所述处理所述每个分配事件和每个所述释放事件,包括:对于分配事件,如果所述当前空余内存块集合为空集,则在所述当前空余内存块集合中加入所述分配事件对应的内存大小的内存块到所述当前空余内存块集合中;如果所述当前空余内存块集合不为空集,在所述当前空余内存块集合中寻找不小于所述分配事件对应的内存大小的最小的一段连续内存块作为空闲内存块,如果不存在这样的内存块,将当前空余内存块集合中最大的内存块的大小修改为所述分配事件对应的内存大小并将其作为所述空闲内存块;将所述空闲内存块从所述当前空余内存块集合中移除,如果所述空闲内存块的大小大于所述分配事件对应的内存大小,则将所述空闲内存块的大小与所述分配事件对应的内存大小的差对应的内存块插入到所述当前空余内存块集合中;在当前已分配的内存块集合中查找起始地址小于所述空闲内存块的起始地址条件下具有最高起始地址的最高内存块,设置内存块的起始地址比所述请求对应的内存块的起始地址低的第一个请求对应于所述最高内存块,如果查找不到所述最高内存块,则设置内存块的起始地址比所述请求对应的内存块的起始地址低的第一个请求为空;在当前已分配的内存块集合中查找起始地址大于所述空闲内存块的起始地址条件下具有最低起始地址的最低内存块,设置内存块的起始地址比所述请求对应的内存块的起始地址高的第一个请求对应于所述最低内存块,如果查找不到所述最低内存块,则设置内存块的起始地址比所述请求对应的内存块的起始地址高的第一个请求为空;对于释放事件,将所述释放事件对应的内存块从所述当前已分配的内存集合中移除,并将所述释放事件对应的内存块加入所述当前空余内存块集合;如果所述当前空余内存块集合中存在与所述释放事件对应的内存块地址连续的内存块,则将其与所述释放事件对应的内存块合并。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京旷视科技有限公司;北京迈格威科技有限公司,未经北京旷视科技有限公司;北京迈格威科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710403524.9/2.html,转载请声明来源钻瓜专利网。





