全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210841350.5 (22)申请日 2022.07.18 (71)申请人 北京一流科技有限公司 地址 100083 北京市海淀区王庄路1号院2 号楼4层5 -E-1 (72)发明人 张建浩 马诗晗 李一鹏  (74)专利代理 机构 北京金讯知识产权代理事务 所(特殊普通 合伙) 11554 专利代理师 黄剑飞 (51)Int.Cl. G06F 9/50(2006.01) G06F 11/30(2006.01) (54)发明名称 支持逆向动态重计算的内存释放决策系统 及其方法 (57)摘要 本公开涉及支持逆向动态重计算的内存释 放决策系统和方法。 所述系统包括: 内存空间监 测组件, 获取内存池占用量是否超过预定阈值; 重计算代 价评估组件, 在内存空间监测组件获取 内存池占用量是超过预定阈值时, 针对内存池中 每一个张量, 估算每个张量的正向重计算代价, 以及在所述待估算张量能通过逆向重计算获得 的情况下, 还估算其逆向重计算代价, 并将所述 正向重计算代价和逆向重计算代价中的最小值 作为所述待估算张量的当前重计算代 价; 内存释 放组件, 对 所有待估算张量的当前重计算代价按 照大小进行排序, 并将一个或多个最小的当前重 计算代价所对应的待估算张量所在的内存予以 释放, 从而增加所述内存池的可再分配的内存空 间。 权利要求书3页 说明书14页 附图2页 CN 115168041 A 2022.10.11 CN 115168041 A 1.一种支持逆向动态重计算的内存释放决策系统, 包括: 内存空间监测组件, 部署在内存分配 器中, 获取内存 池占用量是否超过 预定阈值; 重计算代价评估组件, 在内存空间监测 组件获取内存池占用量是超过预定阈值时, 针 对内存池中当前所保存的张量中的每一个张量, 估算作为待估算张量的每个张量的正向重 计算代价, 以及在所述待估算张量能通过逆向重计算获得 的情况下, 还估算其逆向重计算 代价, 并将所述正向重计算代价和逆向重计算代 价中的最小值作为所述待估算张量的当前 重计算代价; 内存释放组件, 对所有内存池中的所有待估算张量的当前重计算代价按照大小进行排 序, 并将一个或多个最小的当前重计算代价所对应的待估算张量所在的内存予以释放, 从 而增加所述内存 池的可再分配的内存空间。 2.根据权利要求1所述的支持逆向动态重计算的内存释放决策系统, 其中所述重计算 代价评估组件 包括: 张量使用历史记录单元, 记录张量使用历史并提供待估算张量最近使用时刻距离当前 时刻的时间 间隔; 张量递归查询单元, 从内存池中每一个待估算张量开始递归查询的其父代张量和子代 张量, 并且所述递归查询终止于查询到所述待估算张量的当前存在于内存池中的第一个父 代张量和 第一个子代张量, 由此确定用于估算所述待估算张量的重计算代价的所有父代张 量和所有子代张量的第一集合, 其中所有 父代张量包括所述第一个父代张量与所述待估算 张量之间的所有中间父代张量, 所有子代张量包括所述第一子代张量与待估算张量之 间的 所有中间子代张量; 代价估算单元, 用于对所述待估算张量的正向计算代价以及所述第 一集合中的各个张 量的正向计算代价进行求和, 以获得所述待估算张量的正向计算代价和, 对所述待估算张 量的逆向计算代价以及所述第一集合的各个张量的逆向计算代价进行求和, 以获得所述待 估算张量的逆向计算代价和, 以及 对所述待估算张量所占用空间的大小和所述时间间隔进 行求积, 由此计算所述正向计算代价和与所述乘积的比值, 作为所述待估算张量的正向重 计算代价, 以及计算所述逆向计算代价和与所述乘积的比值作为所述待估算张量的逆向重 计算代价。 3.根据权利要求2所述的支持逆向动态重计算的内存释放决策系统, 其中, 所述张量递归查询单元在递归查询到的所述待估算张量的当前存在于内存池中的第 一个父代张量和 第一个子代张量之前, 如果递归查询到的所述待估算张量的将被反向传播 所使用的一个父代张量或一个子代张量, 则所述将被反向传播所使用的一个父代张量或一 个子代张量则被确定为第一个父代张量或第一个子代张量。 4.根据权利要求3所述的支持逆向动态重计算的内存释放决策系统, 其中, 所述张量递归查询单元在基于所述张量使用历史记录单元所记录的信息获知所述待 估算张量基于当前内存池所存储的张量不能可逆重计算或者生成所述待估算张量的计算 逻辑节点本身 可逆的情况下, 通过递归查询获得所述待估算张量的连续可逆向计算的父代 张量以及所述连续可逆向计算的父代张量的各自的连续不能逆向计算的子代张量的第二 张量集合; 以及 所述代价估算单元对所述第二张量集合的各个张量的正向计算代价进行求和得到代权 利 要 求 书 1/3 页 2 CN 115168041 A 2价修正系数, 并利用所述代价修正系数与所述正向重计算代价的乘积结果作为所述待估算 张量的正向重计算代价。 5.根据权利要求1 ‑4之一所述的支持逆向动态重计算的内存释放决策系统, 其中, 所述内存空间监测组件还监测在所述内存池的任意连续可分配内存空间是否小于任 意计算逻辑节点向所述内存 池申请的内存空间; 以及 所述重计算代价评估组件还在所述内存池的任意连续可分配内存空间小于任意计算 逻辑节点向所述内存池申请的内存空间时, 针对内存池中当前所保存的张量中的每一个张 量, 估算作为待估算张量的每个张量的正向重计算代价, 以及在所述待估算张量能通过逆 向重计算获得 的情况下, 还估算其逆向重计算代价, 并将所述正向重计算代价和逆向重计 算代价中的最小值作为所述待估算张量的当前重计算代价。 6.一种支持逆向动态重计算的内存释放决策 方法, 包括: 通过部署在内存分配 器中内存空间监测组件获取内存 池占用量是否超过 预定阈值; 在内存空间监测组件获取内存池占用量是超过预定阈值 时, 通过重计算代价评估组件 针对内存池中当前所保存的张量中的每一个张量, 估算作为待估算张量的每个张量的正向 重计算代价, 以及在所述待估算张量能通过逆向重计算获得的情况下, 还估算其逆向重计 算代价, 并将所述正向重计算代价和逆向重计算代价中的最小值作为所述待估算张量的当 前重计算代价; 通过内存释放组件对所有内存池中的所有待估算张量的当前重计算代价按照大小进 行排序, 并将一个或多个最小的当前重计算代价所对应的待估算张量所在的内存予以释 放, 从而增 加所述内存 池的可再分配的内存空间。 7.根据权利要求6所述的支持逆向动态重计算的内存释放决策方法, 其中所述重计算 代价评估 包括: 通过张量使用历史记录单 元获取待估算张量 最近使用时刻距离当前时刻的时间 间隔; 通过张量递归查询单元从内存池中每一个待估算张量开始递归查询的其父代张量和 子代张量, 并且所述递归查询终止于查询到所述待估算张量的当前存在于内存池中的第一 个父代张量和 第一个子代张量, 由此确定用于估算所述待估算张量的重计算代价的所有 父 代张量和所有子代张量的第一集合, 其中所有父代张量包括所述第一个父代张量与所述待 估算张量之 间的所有中间父代张量, 所有子代张量包括所述第一子代张量与待估算张量之 间的所有中间子代张量; 通过代价估算单元对所述待估算张量的正向计算代价以及所述第一集合中的各个张 量的正向计算代价进行求和, 以获得所述待估算张量的正向计算代价和, 对所述待估算张 量的逆向计算代价以及所述第一集合的各个张量的逆向计算代价进行求和, 以获得所述待 估算张量的逆向计算代价和, 以及 对所述待估算张量所占用空间的大小和所述时间间隔进 行求积, 由此计算所述正向计算代价和与所述乘积的比值, 作为所述待估算张量的正向重 计算代价, 以及计算所述逆向计算代价和与所述乘积的比值作为所述待估算张量的逆向重 计算代价。 8.根据权利要求7 所述的支持逆向动态重计算的内存释放决策 方法, 其还 包括: 在递归查询到的所述待估算张量的当前存在于内存池中的第一个父代张量和第一个 子代张量之前, 如果通过所述张量递归查询单元递归查询到的所述待估算张量的将 被反向权 利 要 求 书 2/3 页 3 CN 115168041 A 3

.PDF文档 专利 支持逆向动态重计算的内存释放决策系统及其方法

文档预览
中文文档 20 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共20页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 支持逆向动态重计算的内存释放决策系统及其方法 第 1 页 专利 支持逆向动态重计算的内存释放决策系统及其方法 第 2 页 专利 支持逆向动态重计算的内存释放决策系统及其方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 13:32:40上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。