[发明专利]基于多核处理器的数据访问方法和装置有效
申请号: | 201811385741.0 | 申请日: | 2018-11-20 |
公开(公告)号: | CN109684237B | 公开(公告)日: | 2021-06-01 |
发明(设计)人: | 宋昌 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F12/0897 | 分类号: | G06F12/0897;G06F12/0815 |
代理公司: | 北京龙双利达知识产权代理有限公司 11329 | 代理人: | 张欣;王君 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 多核 处理器 数据 访问 方法 装置 | ||
本申请实施例提供了一种基于多核处理器的数据访问方法和装置。本申请实施例基于将两种缓存一致性协议(基于目录的缓存一致性协议以及基于侦听的缓存一致性协议)结合的形式,先采用基于目录的缓存一致性协议维护数据的一致性,若目录中未记录的数据,再采用基于侦听的缓存一致性协议维护数据的一致性,以减少通过总线发送侦听的次数。
技术领域
本申请涉及信息技术领域,并且更具体地,涉及基于多核处理器的数据访问方法和装置。
背景技术
多核处理器是指在一枚处理器中集成两个或多个完整的计算引擎(又称“核”或“内核”),每个内核都有各自的二级缓存器来存储数据或者指令,每个内核的二级缓存器都属于该内核的私有缓存,即,二级缓存器的缓存空间仅仅提供给某一特定的内核使用。但是,不同的内核使用的数据中可能存在同一份数据,也就是说,不同内核的二级缓存器中可能分别存储有同一份数据的副本,这种数据被称为共享数据。
共享数据的存在引入了缓存一致性问题。目前,主要有两种保证缓存一致性的协议:基于侦听的缓存一致性协议(或称侦听协议)以及基于目录结构的缓存一致性协议(或称目录协议)。侦听协议的实现依赖于一个总线或者类总线形式的网络连接,基于此,某个内核发送的所有访存请求会被广播到多核处理器其它内核,其它内核可以基于接收到的访存请求修改私有缓存中的数据,以实现缓存一致性。但是,由于所有访存请求都是通过总线来进行传输的,而总线带宽资源有限,因此,上述基于侦听协议实现缓存一致性的方式会影响整个系统的扩展性。目录协议则是采用一个目录结构来实现对缓存块的管理的,在目录协议中,此目录结构中记录了当前多核处理器中存储的共享数据的分布情况,某一内核的发出的访存请求,会基于目录结构被发送到拥有访存请求携带的相应数据的目标内核。但由于此协议的实现中,目录中需要记录多核处理器中全部数据的共享情况,以及共享数据的副本对应的内核,导致存储目录占用的存储空间较大。
由上可知,上述两种缓存一致性协议中各自有各自的缺陷,为了兼顾存储目录占用的存储空间的大小与发送访存请求占用的总线带宽资源两方面原因,本申请提供了一种新的缓存一致性的解决方案。
发明内容
本申请提供一种从多核处理器中读数据的方法和装置,有利于兼顾存储目录占用的存储空间的大小与发送访存请求占用的总线带宽资源。
第一方面,提供了一种从多核处理器中读数据的方法,所述多核处理器中包括多个内核以及三级缓存,每个内核的二级缓存器包括第一缓存区以及第二缓存区,所述第一缓存区中存储的数据的修改频率高于所述第二缓存区中存储的数据的修改频率,所述方法包括:所述多个内核中的第一内核向所述第一内核的二级缓存器发送读请求,所述读请求请求读取第一读数据;若所述第一读数据未存储在所述第一内核的二级缓存器以及所述三级缓存器中,所述第一内核通过查询目录从所述多个内核中确定目标内核,并向所述目标内核转发所述读请求,所述目录记录所述目标内核的缓存(例如,第一缓存区)中记录有所述第一读数据;若所述目录中未记录所述第一读数据,所述第一内核向所述多个内核中的其他内核发送所述读请求。
在本申请实施例中,通过将两种协议结合的形式,先采用基于目录的缓存一致性协议维护数据的一致性,若目录中未记录的数据,再采用基于侦听的缓存一致性协议维护数据的一致性,以减少通过总线发送侦听的次数。
可选地,所述目录用于记录所述多个内核中每个内核的所述第一缓存区中存储的数据,具体地,目录用于记录所述多个内核中每个内核的所述第一缓存区中存储的数据的索引。
需要说明的是,上述目录还可以存储多个内核的第二缓存区中的部分数据,并不限于是每个内核的所述第一缓存区中存储的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811385741.0/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置