[发明专利]通过请求来日志记录对更高级别的缓存的缓存流入量在审
申请号: | 201980014496.9 | 申请日: | 2019-02-14 |
公开(公告)号: | CN111742301A | 公开(公告)日: | 2020-10-02 |
发明(设计)人: | J·莫拉;H·加布里杰尔斯基 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F11/34 | 分类号: | G06F11/34;G06F11/36;G06F11/30 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 黄倩 |
地址: | 美国华*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 通过 请求 日志 记录 高级 别的 缓存 流入 | ||
1.一种微处理器,包括:
多个处理单元;
被布置到多个缓存层中的多个缓存,所述多个缓存包括第一缓存层内的多个第一缓存和第二缓存层内的一个或多个第二缓存,所述第二缓存层中的特定第二缓存用作针对所述第一缓存层中的至少特定第一缓存的后备存储库;以及
控制逻辑,将至少所述特定第二缓存配置为执行至少以下:
从所述特定第一缓存接收参考特定存储器地址的日志记录请求;以及
基于所述请求,确定所述特定第二缓存中是否存在与所述存储器地址相对应的缓存行,并且
当所述特定第二缓存中不存在所述缓存行时,执行以下中的一项:
当不存在参与日志记录并且充当针对至少所述特定第二缓存的后备存储库的第三缓存时,使所述缓存行被日志记录;或者
当所述第三缓存确实存在时,将所述请求转发到所述第三缓存;或者
当所述特定第二缓存中存在所述缓存行时,执行以下至少一项:
当(i)所述缓存行未被所述特定第二缓存确定为被日志记录,或(ii)所述缓存行被所述特定第二缓存确定为被日志记录,但所述特定第二缓存尚未确定所述第一缓存知道所述特定第二缓存的所述缓存行中存储的当前值时,使所述缓存行被日志记录;或者
当(i)所述缓存行被所述特定第二缓存确定为被日志记录并且(ii)确定所述第一缓存知道所述特定第二缓存的所述缓存行中存储的所述当前值时,确定所述缓存行不需要被日志记录。
2.根据权利要求1所述的微处理器,其中使所述缓存行被日志记录包括:
将所述缓存行日志记录在跟踪缓冲器内;以及
将所述缓存行标记为被日志记录在所述特定第二缓存内。
3.根据权利要求1所述的微处理器,其中使所述缓存行被日志记录包括以下中的一项:
指令所述第一缓存直接日志记录所述特定存储器地址的值;或者
指令所述第一缓存日志记录对针对所述特定存储器地址的先前日志条目的参考。
4.根据权利要求1所述的微处理器,其中当所述缓存行未被所述特定第二缓存确定为被日志记录时,使所述缓存行被日志记录包括:
确定存在所述第三缓存层,以及
通知所述第三缓存所述缓存行已由所述特定第二缓存按值日志记录。
5.根据权利要求1所述的微处理器,其中所述第一缓存层包括L1缓存层,并且其中所述第二缓存层包括L2缓存层或L3缓存层。
6.根据权利要求1所述的微处理器,所述控制逻辑还将至少所述特定第二缓存配置为:
从所述第一缓存接收消息,所述消息指示所述第一缓存中还与所述存储器地址相对应的另一缓存行被标记为未被日志记录在所述第一缓存内;以及
基于所述消息,将所述缓存行标记为未被日志记录在所述特定第二缓存内。
7.根据权利要求6所述的微处理器,其中基于所述另一缓存行由与所述第一缓存相对应的处理单元在针对所述处理单元禁用日志记录的情况下写入,所述另一缓存行被标记为未被日志记录在所述第一缓存内。
8.根据权利要求1所述的微处理器,所述控制逻辑还将至少所述特定第二缓存配置为:
从所述第一缓存接收请求所述缓存行进行写入的消息;以及
将所述缓存行发送到所述第一缓存,至少基于针对所述第一缓存禁用日志记录,所述缓存行被标记为未被日志记录。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201980014496.9/1.html,转载请声明来源钻瓜专利网。