全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210500955.8 (22)申请日 2022.05.09 (71)申请人 OPPO广东移动通信有限公司 地址 523860 广东省东莞 市长安镇乌沙海 滨路18号 (72)发明人 刘金保  (74)专利代理 机构 广州德科知识产权代理有限 公司 44381 专利代理师 林翠 万振雄 (51)Int.Cl. G06F 3/06(2006.01) G06F 9/50(2006.01) G06F 12/0802(2016.01) (54)发明名称 基于栈空间特性缓存处理方法、 装置、 电子 设备及存 储介质 (57)摘要 本申请实施例公开了一种基于栈空间特性 的缓存处理方法、 装置、 电子设备及存储介质, 用 于在分配栈空间时, 利用栈空间的局部性特征, 能够提前为栈空间分配缓存, 降低之后的访问延 迟, 利用栈空间的时效性特征, 能够减少对外部 存储器的带宽需求; 在释放栈空间时, 再次利用 栈空间的时效性特征, 提高缓存的利用率, 减少 对外部存储器的带宽需求。 本申请实施例方法包 括: 通过CP U分配栈空间; 在缓存行的数据缺失的 情况下, 为所述栈空间分配缓存, 并从外部存储 器读取数据对所述缓存行填充; 或, 读取多个缓 存行的标志位; 在确定替换目标缓存行的情况 下, 若所述标志位无效, 则直接无效化所述目标 缓存行的数据, 所述目标缓存行为所述多个缓存 行中的一个 。 权利要求书1页 说明书11页 附图6页 CN 114840143 A 2022.08.02 CN 114840143 A 1.一种基于栈空间特性的缓存处 理方法, 其特 征在于, 包括: 通过中央处 理器CPU分配栈空间; 在缓存行的数据缺失的情况下, 为所述栈空间分配缓存, 并从外部存储器读取数据对 所述缓存行填充; 或, 读取多个缓存行的标志位; 在确定替换目标缓存行的情况下, 若所述标志位无效, 则直接无效化所述目标缓存行 的数据, 所述目标缓存行为所述多个缓存行中的一个。 2.根据权利要求1所述的方法, 其特征在于, 所述在缓存行的数据缺失的情况下, 为所 述栈空间分配缓存, 并从外 部存储器读取 数据对所述缓存行填充, 包括: 在所述缓存行的数据缺失, 且所述栈空间不是缓存行对齐的情况下, 为所述栈空间分 配缓存行, 并从外 部存储器读取 数据对所述缓存行填充。 3.根据权利要求2所述的方法, 其特 征在于, 所述方法还 包括: 在所述缓存行的数据缺失, 且所述栈空间是缓存行对齐的情况下, 为所述栈空间分配 缓存。 4.根据权利要求1 ‑3中任一项所述的方法, 其特 征在于, 所述方法还 包括: 获取读/写请求; 根据所述读/写请求在所述缓存行中进行读/写。 5.根据权利要求1所述的方法, 其特 征在于, 所述方法还 包括: 若所述标志位有效, 则判断所述目标缓存行的数据是否是脏数据; 若是脏数据, 则写回至 外部存储器; 若不是脏数据, 则直接无效化所述目标缓存行的数据。 6.根据权利要求5所述的方法, 其特 征在于, 所述方法还 包括: 在栈空间释放时, 如果释放的空间是缓冲行对齐, 将数据无效位设为1, 表示数据无效。 7.根据权利要求5或6所述的方法, 其特 征在于, 所述方法还 包括: 在栈空间再次被分配时, 将数据无效位设为0, 表示 不起作用。 8.一种基于栈空间特性的缓存处 理装置, 其特 征在于, 包括: 处理器, 用于通过中央处理器CPU分配栈空间; 在缓存行的数据缺失的情况下, 为所述 栈空间分配缓存, 并从外 部存储器读取 数据对所述缓存行填充; 或, 所述处理器, 用于读取多个缓存行的标志位; 在确定替换目标缓存行的情况下, 若所述 标志位无效, 则直接无效化所述 目标缓存行 的数据, 所述 目标缓存行为所述多个缓存行中 的一个。 9.一种电子设备, 其特 征在于, 包括: 存储有可执行程序代码的存 储器; 与所述存 储器耦合的处 理器; 所述处理器用于对应执 行如权利要求1 ‑8中任一项所述的方法。 10.一种计算机可读存储介质, 包括指令, 当其在处理器上运行时, 使得处理器执行如 权利要求1 ‑7中任一项所述的方法。权 利 要 求 书 1/1 页 2 CN 114840143 A 2基于栈空间特性缓存处理 方法、 装置、 电子设备及存储介质 技术领域 [0001]本申请涉及处理器领域, 尤其涉及一种基于栈空间特性的缓存处理方法、 装置、 电 子设备及存 储介质。 背景技术 [0002]在现有技术中, 当分配一段栈空间的时候, 目前的设计都是等到CPU发起读写操作 后才分配缓存。 而且如果当前分配的栈空间大小刚好是缓存行对齐的, 基于时效性特征, 分 配时该段 空间保存的数据已经失效, 但是CPU缓存控制器在数据缺 失的情况下, 通常仍然会 从外部存储器中读取无效值, 造成带宽浪费。 当释放一段栈空间的时候, 基于时效性特征, 该段栈空间的数据已经是无效数据, 如果该无效数据在缓存中的状态是脏数据, 缓存控制 器在对其执 行替换操作的时候, 仍然会将该 无效数据写入外 部存储器中, 浪费外 部带宽。 发明内容 [0003]本申请实施例提供了一种基于栈空间特性的缓存处理方法、 装置、 电子设备及存 储介质, 用于在分配栈空间时, 利用栈空间的局部性特征, 能够提前为栈空间分配缓存, 降 低之后的访问延迟, 利用栈空间的时效性特征, 能够 减少对外部存储器的带宽需求; 在释放 栈空间时, 再次利用栈空间的时效性特征, 提高缓存的利用率, 并且由于避免了无效数据向 外部存储器的写回操作, 减少了对外 部存储器的带宽需求。 [0004]本申请第一方面 提供一种基于栈空间特性的缓存处 理方法, 可以包括: [0005]通过中央处 理器CPU分配栈空间; [0006]在缓存行的数据缺失的情况下, 为所述栈空间分配缓存, 并从外部存储器读取数 据对所述缓存行填充; [0007]或, [0008]读取多个缓存行的标志位; [0009]在确定替换目标缓存行的情况下, 若所述标志位无效, 则直接无效化所述目标缓 存行的数据, 所述目标缓存行为所述多个缓存行中的一个。 [0010]本申请第二方面 提供一种基于栈空间特性的缓存处 理装置, 其特 征在于, 包括: [0011]处理器, 用于通过中央处理器CPU分配栈空间; 在缓存行的数据缺失的情况下, 为 所述栈空间分配缓存, 并从外 部存储器读取 数据对所述缓存行填充; [0012]或, [0013]所述处理器, 用于读取多个缓存行的标志位; 在确定替换目标缓存行的情况下, 若 所述标志位无效, 则直接无效化所述 目标缓存行 的数据, 所述 目标缓存行为所述多个缓存 行中的一个。 [0014]本申请第三方面 提供一种电子设备, 包括: [0015]存储有可执行程序代码的存 储器; [0016]与所述存 储器耦合的处 理器;说 明 书 1/11 页 3 CN 114840143 A 3

.PDF文档 专利 基于栈空间特性缓存处理方法、装置、电子设备及存储介质

文档预览
中文文档 19 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共19页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 基于栈空间特性缓存处理方法、装置、电子设备及存储介质 第 1 页 专利 基于栈空间特性缓存处理方法、装置、电子设备及存储介质 第 2 页 专利 基于栈空间特性缓存处理方法、装置、电子设备及存储介质 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 07:15:45上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。