[发明专利]多线程条件下CPU高速缓存行失效的处理方法及装置有效
申请号: | 201510809800.2 | 申请日: | 2015-11-19 |
公开(公告)号: | CN105242978B | 公开(公告)日: | 2019-01-08 |
发明(设计)人: | 贾宏超 | 申请(专利权)人: | 东软集团股份有限公司 |
主分类号: | G06F11/00 | 分类号: | G06F11/00 |
代理公司: | 北京英创嘉友知识产权代理事务所(普通合伙) 11447 | 代理人: | 赵杰;南毅宁 |
地址: | 110179 辽*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种多线程条件下CPU高速缓存行失效的处理方法及装置。所述方法包括:判断第一字段和第二字段之间是否需要隔离,所述第一字段用volatile关键字修饰;如果需要隔离,在所述第一字段和所述第二字段之间加入填充字段,所述填充字段用于使所述第一字段和所述第二字段位于不同缓存行。如此,就可有效避免多线程条件下的CPU高速缓存行失效,有助于维持应用程序性能。 | ||
搜索关键词: | 多线程 条件下 cpu 高速缓存 失效 处理 方法 装置 | ||
【主权项】:
1.一种多线程条件下CPU高速缓存行失效的处理方法,其特征在于,所述方法包括:判断第一字段和第二字段之间是否需要隔离,所述第一字段用volatile关键字修饰;如果需要隔离,在所述第一字段和所述第二字段之间加入填充字段,所述填充字段用于使所述第一字段和所述第二字段位于不同缓存行;其中,所述判断第一字段和第二字段之间是否需要隔离,包括:根据Java虚拟机按照变量的类型进行重排列的规则,确定位于所述第一字段和所述第二字段之间的字段数量,所述第一字段、所述第二字段和所述填充字段三者具有相同类型;根据所述字段数量及对应类型字段所占比特位,计算获得所述第一字段和所述第二字段的间隔距离;利用所述间隔距离和处理器的缓存行大小,判断所述第一字段和所述第二字段是否位于同一缓存行;如果位于同一缓存行,判定所述第一字段和所述第二字段之间需要隔离。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东软集团股份有限公司,未经东软集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510809800.2/,转载请声明来源钻瓜专利网。
- 上一篇:槽距测量仪
- 下一篇:油气管道法兰连接绝缘螺栓