[发明专利]基于多内核处理器的一致性处理方法和装置有效
| 申请号: | 201310260830.3 | 申请日: | 2013-06-26 |
| 公开(公告)号: | CN104252423B | 公开(公告)日: | 2017-12-15 |
| 发明(设计)人: | 张轮凯;范东睿;叶笑春;王达 | 申请(专利权)人: | 华为技术有限公司;中国科学院计算技术研究所 |
| 主分类号: | G06F12/0866 | 分类号: | G06F12/0866 |
| 代理公司: | 北京同立钧成知识产权代理有限公司11205 | 代理人: | 刘芳 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 内核 处理器 一致性 处理 方法 装置 | ||
技术领域
本发明涉及数据存储技术,尤其涉及一种基于多内核处理器的一致性处理方法和装置。
背景技术
多内核处理器是指在一枚处理器中集成了多个内核。多内核处理器与用于存储各个共享数据的片外内存连接,片外内存包括多个数据页,每个数据页包括多个数据块。多内核处理器的内核通过网络相互连接,该网络用于在内核间传递消息。多内核处理器中的每个内核包括处理器核、片内缓存、旁路转换缓冲(Translation lookaside buffer,TLB)和稀疏目录。内核在对片外内存中的共享数据进行操作之前,需要将共享数据缓存到该内核的片内缓存中,若至少两个内核的片内缓存中缓存有片外内存中的同一共享数据,其中一个内核对所缓存的共享数据进行写操作后,则会造成写操作后的共享数据与其余内核中所缓存的共享数据不一致,因此,需要多内核处理器维护共享数据的一致性。
现有技术中,多内核处理器采用目录协议和侦听协议中的一种维护共享数据的一致性。由于目录协议需要在稀疏目录中存储目录项,利用目录项记录缓存各个共享数据的内核,从而根据该稀疏目录中的目录项对内核中存储的共享数据进行一致性处理,造成采用目录协议的多内核处理器存储开销较大,一致性处理效率较低;另外,尽管侦听协议不必在稀疏目录中存储目录项,但由于侦听协议需要采用广播消息的方式获知缓存有共享数据的内核,从而对共享数据进行一致性处理,造成采用侦听协议的多内核处理器信令开销较大,同样造成一致性处理效率较低。
发明内容
本发明实施例提供一种基于多内核处理器的一致性处理方法和装置,用于提高一致性处理效率。
第一方面是提供一种基于多内核处理器的一致性处理方法,包括:接收多内核处理器中第一内核发送的一致性请求消息;所述一致性请求消息用于指示待进行一致性处理的目标共享数据;根据所述多内核处理器中第二内核的数量,选择采用目录协议或侦听协议中的一种对所述目标共享数据进行一致性处理;所述第二内核为共享所述目标共享数据的内核。
在第一方面的第一种可能的实现方式中,所述目标共享数据为片外内存的目标数据页中的数据;所述片外内存用于为所述多内核处理器提供所述目标共享数据。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述根据所述多内核处理器中第二内核的数量,选择采用目录协议或侦听协议中的一种对所述目标共享数据进行一致性处理,包括:判断所述第二内核的数量是否大于预先确定的共享阈值;所述共享阈值为大于零且小于所述多内核处理器的内核数量的整数;若所述第二内核的数量不大于所述共享阈值,则采用侦听协议对所述目标共享数据进行一致性处理;若所述第二内核的数量大于所述共享阈值,则采用目录协议对所述目标共享数据进行一致性处理。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述根据所述多内核处理器中第二内核的数量,选择采用目录协议或侦听协议中的一种对所述目标共享数据进行一致性处理之后,包括:根据所述多内核处理器的网络冲突率和所述多内核处理器的稀疏目录替换率,更新所述共享阈值;所述网络冲突率,指示用于在所述多内核处理器的内核之间传递消息的网络的拥塞程度;所述稀疏目录替换率,指示所述多内核处理器中的稀疏目录的存储空间占用程度;若所述多内核处理器的内核中缓存有所述片外内存的第一数据页中的数据,删除所述多内核处理器的内核缓存的所述第一数据页中的数据,以使所述多内核处理器中的稀疏目录删除所述第一数据页对应的目录项;所述第一数据页对应的目录项用于记录对所述第一数据页的各个数据块中的数据进行缓存的内核;所述第一数据页满足缓存所述第一数据页中的数据的内核数量大于更新后的共享阈值。
结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述根据所述网络冲突率和所述稀疏目录替换率,更新所述共享阈值,包括:若所述网络冲突率高于第一阈值,并且所述稀疏目录替换率低于第三阈值,则确定所述更新后的共享阈值为所述共享阈值的二倍;若所述网络冲突率低于第二阈值,并且所述稀疏目录替换率高于第四阈值,则确定所述更新后的共享阈值为所述共享阈值的一半。
结合第一方面的第三种可能的实现方式,在第一方面的第五种可能的实现方式中,所述网络冲突率为实际传递时间和理论传递时间之差,与所述理论传递时间之间的比值;所述理论传递时间是计算获得的当所述网络的状态为畅通时,至少一个测试消息在所述网络中进行传递所需的总时间;所述实际传递时间是统计获得的所述至少一个测试消息在所述网络中进行传递所实际使用的总时间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司;中国科学院计算技术研究所,未经华为技术有限公司;中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310260830.3/2.html,转载请声明来源钻瓜专利网。





