一种基于计数器的粗结构目录设计方法.pdf

上传人:li****8 文档编号:1664229 上传时间:2018-07-03 格式:PDF 页数:6 大小:358.98KB
返回 下载 相关 举报
摘要
申请专利号:

CN201510110028.5

申请日:

2015.03.13

公开号:

CN104714901A

公开日:

2015.06.17

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):G06F 13/14申请日:20150313|||公开

IPC分类号:

G06F13/14

主分类号:

G06F13/14

申请人:

浪潮集团有限公司

发明人:

王恩东; 倪璠; 陈继承; 唐士斌; 王洪伟; 赵雅倩

地址:

250101山东省济南市高新区舜雅路1036号

优先权:

专利代理机构:

济南信达专利事务所有限公司37100

代理人:

姜明

PDF下载: PDF下载
内容摘要

本发明公开一种基于计数器的粗结构目录设计方法,属于计算机系统结构技术领域;基于目录实现的Cache一致性协议,当共享数据块请求独占权限时,粗结构目录控制器根据目录项共享列表记录的信息向系统具有该数据块有效副本的处理器发送副本无效或更新消息,粗结构目录中每个目录项共享列表向量对应一组处理器,每组处理器中,任何一个处理器具有数据块的有效副本时,对应位置为1,否则为0;对每组处理器设置计数器,记录该组中有效副本的处理器数量,仅当处理器组对应的计数器计数大于0时,发送数据无效或更新消息;本发明通过在传统粗结构目录中引入计数器记录处理器组中共享副本数量来减少副本无效或更新消息的过度广播。

权利要求书

权利要求书
1.  一种基于计数器的粗结构目录设计方法,基于目录实现的Cache一致性协议,当共享数据块请求独占权限时,粗结构目录控制器根据目录项共享列表记录的信息向系统具有该数据块有效副本的处理器发送副本无效或更新消息,其特征是粗结构目录中每个目录项共享列表向量对应一组处理器,每组处理器中,任何一个处理器具有数据块的有效副本时,对应位置为1,否则为0;对每组处理器设置计数器,记录该组中有效副本的处理器数量,仅当处理器组对应的计数器计数大于0时,发送数据无效或更新消息。

2.  根据权利要求1所述的一种基于计数器的粗结构目录设计方法,其特征是当所述的处理器组中任何一个处理器获得存储块的有效副本,将其所在处理器组对应的计数器加1。

3.  根据权利要求1所述的一种基于计数器的粗结构目录设计方法,其特征是当所述的某个Cache行被替换时,处理器组会发送消息通知粗结构目录控制器,粗结构目录控制器将发送消息的处理器组对应的计数器减1。

4.  根据权利要求1所述的一种基于计数器的粗结构目录设计方法,其特征是所述的处理器请求数据块的独占权限时,粗结构目录控制器检查对应目录项的共享列表,仅当请求独占权限的处理器所在的处理器组,要求计数器值减去该处理器具有的数据块有效副本数大于0时发送数据无效或更新消息。

5.  根据权利要求4所述的一种基于计数器的粗结构目录设计方法,其特征是所述的请求数据块独占权限的处理器,没有数据块有效副本,该处理器组对应的共享列表向量位被置位,向处理器组内的所有处理器发送副本无效或更新消息,待所有消息返回应答后,粗结构目录控制器给该处理器返回具有独占权限的数据块副本。

6.  根据权利要求4所述的一种基于计数器的粗结构目录设计方法,其特征是所述的请求数据块独占权限的处理器,具有数据块有效副本,该处理器组的计算器计数为0时,表示该组没有数据块的其它有效副本,不向该组中的处理器发送副本无效或更新消息;其它处理器组的计数器计数如果大于0,则向该处理器组内的所有处理器发送副本无效或更新消息。

说明书

说明书一种基于计数器的粗结构目录设计方法
技术领域
本发明公开一种基于计数器的粗结构目录设计方法,属于计算机系统结构技术领域。
背景技术
传统的全映射目录虽然实现简单,能够准确记录系统共享存储块的副本信息从而避免无效的消息广播,但是使用全映射方式实现的目录项共享列表硬件存储开销过大,不利于系统的扩展。因此,大规模多核多处理器系统通常使用更精简的目录结构设计,例如有限目录或粗结构目录(coarse directory)。而在传统的粗结构目录中,将系统中所有的处理器编号并分组,每一组处理器对应共享列表向量中的一位。当某个处理器具有数据块的有效副本时,将存储块对应的目录项共享列表向量中与该处理器所在处理器组对应的位置为1。当某个处理器中的副本被无效时,由于无法知晓本组处理器中的其他处理器是否具有有效副本,因此必须保持对应位置为1。后续如果某个处理器请求该存储块的独占权限,目录控制器向该共享列表向量中置位的所有处理器组中的所有其它处理器发送副本无效或更新消息。此时,处理器组可能已经没有数据块的合法副本,从而造成消息的过度广播。
为此,本发明提供一种基于计数器的粗结构目录设计方法,为每个处理器组关联计数器,记录该组中副本数量,便于判断处理器组中副本的数量情况,从而减少副本无效或更新的过度消息广播,提升了Cache一致性协议的通信效率。
发明内容
本发明针对传统的粗结构目录中,无法判断处理器内副本情况,而造成消息的过度广播的问题,提供一种基于计数器的粗结构目录设计方法,本发明通过在传统粗结构目录(coarse directory)中引入计数器(counter)记录处理器组中共享副本数量来减少副本无效或更新消息的过度广播。
本发明提出的具体方案是:
一种基于计数器的粗结构目录设计方法,基于目录实现的Cache一致性协议,当共享数据块请求独占权限时,粗结构目录控制器根据目录项共享列表记录的信息向系统具有该数据块有效副本的处理器发送副本无效或更新消息,粗结构目录中每个目录项共享列表向量对应一组处理器,每组处理器中,任何一个处理器具有数据块的有效副本时,对应位置为1,否则为0;对每组处理器设置计数器,记录该组中有效副本的处理器数量,仅当处理器组对应的计数器计数大于0时,发送数据无效或更新消息。
当所述的处理器组中任何一个处理器获得存储块的有效副本,将其所在处理器组对应的计数器加1。
当所述的某个Cache行被替换时,处理器组会发送消息通知粗结构目录控制器,粗结构目录控制器将发送消息的处理器组对应的计数器减1。
所述的处理器请求数据块的独占权限时,粗结构目录控制器检查对应目录项的共享列表,仅当请求独占权限的处理器所在的处理器组,要求计数器值减去该处理器具有的数据块有效副本数大于0时发送数据无效或更新消息。
所述的请求数据块独占权限的处理器,没有数据块有效副本,该处理器组对应的共享列表向量位被置位,向处理器组内的所有处理器发送副本无效或更新消息,待所有消息返回应答后,粗结构目录控制器给该处理器返回具有独占权限的数据块副本。
所述的请求数据块独占权限的处理器,具有数据块有效副本,该处理器组的计算器计数为0时,表示该组没有数据块的其它有效副本,不向该组中的处理器发送副本无效或更新消息;其它处理器组的计数器计数如果大于0,则向该处理器组内的所有处理器发送副本无效或更新消息。
本发明的有益之处是:本发明提供一种基于计数器的粗结构目录设计方法,为每个处理器组关联计数器,记录该组中副本数量,当一个处理器获得数据块的共享副本后,将其所在处理器组对应的计数器加一;而当某个Cache行被替换时,处理器发送消息通知目录控制器,目录控制器将处理器对应的计数器减一。当某个处理器请求数据块的独占权限时,目录控制器首先检查对应目录项的共享列表,仅当处理器组对应数的计器计数大于0,即对于请求独占权限的处理器所在的处理器组,要求计数器值减去该处理器具有的副本数大于0时发送数据无效或更新消息。从而减少了消息的广播,提升了Cache一致性协议的通信效率,并且本发明方法实现简单、直观,有效地减少了一致性消息的过度广播。
附图说明
图1传统粗结构目录项构成示意图;
图2本发明方法的粗结构目录项构成示意图。
具体实施方式
结合附图对本发明做一步说明。
图1是传统粗结构目录项构成示意图,其中假设系统包含N个处理器,每K个处理器构成一个处理器组,共享列表中的一位对应K个处理器。
图2是本发明方法的粗结构目录项构成示意图,假设系统包含N个处理器,每K个处理器构成一个处理器组,每组使用一个log2(K)位计数器记录每组中副本数。
一种基于计数器的粗结构目录设计方法,基于目录实现的Cache一致性协议,当共享数据块请求独占权限时,粗结构目录控制器根据目录项共享列表记录的信息向系统具有该数据块有效副本的处理器发送副本无效或更新消息,粗结构目录中每个目录项共享列表向量对应一组处理器,每组处理器中,任何一个处理器具有数据块的有效副本时,对应位置为1,否则为0;对每组处理器设置计数器,记录该组中有效副本的处理器数量,仅当处理器组对应的计数器计数大于0时,发送数据无效或更新消息。
以附图2所示目录项结构为例,为本发明方法的粗结构目录,其中假设系统包含N个处理器(编号为0、1、…、N-1),其中每K个处理器构成一组,对应一个log2(K)位计数器。
涉及计数器更新及Cache一致性处理的场景如下:
场景1:计数器初始化。每个共享数据块对应目录项共享列表中的所有计数器初始化为0。
场景2:计数器执行计数加一操作。当系统中某个处理器,将其编号为i,请求数据块的有效副本时,将i所在处理器组,编号为i/K,对应的计数器计数加1。
场景3:计数器执行计数减一操作。当系统中的某个处理器,编号记为j,需要替换一个共享副本时,其向目录控制发送一个指示替换操作的一致性消息,自身状态降级为无效;目录接收到该消息后,将处理器组,编号为j/K,对应的计数器计数减1,指示处理器组中的有效副本减少一份。
场景4:处理器请求共享数据块的独占权限。当系统中的某个处理器,编号为w,由于某种原因,例如需要执行写操作,需要获取数据块的独占权限时,处理器w发送一个消息通知目录控制器。根据处理器w是否具有数据有效副本,存在可能的情况为:
处理器w没有数据的有效副本。当处理器组对应的共享列表向量位被置位时,向处理器组内的所有处理器发送副本无效或更新消息。待所有消息返回应答后,目录控制器给处理器w返回具有独占权限的数据块副本。
处理器w具有数据的有效副本。当编号为w/K的处理器组的计数器计数为0时,表示该组没有数据块的其它有效副本,此时,不向该组中的处理器广播副本无效或更新消息;其它处理器组的计数器如果大于0,则向该处理器组内的所有处理器广播副本无效或更新消息。
假设系统包含128颗处理器,即N=128,每16个处理器划分为一个处理器组,即K=16,则传统粗结构目录的目录项共享列表向量需要8位;使用本发明方法的目录项共享列表向量需要32位。
由于共享数据块的副本数通常有限,例如通常不超过5个,可考虑减小计数器的位数,降低本发明方法的目录项长度,节省目录存储开销。此时计数器位数m与K的大小关系为:2m<K。在上面的假设系统包含128颗处理器中,如果使用2位计数器,则目录项共享列表向量仅需要16位,长度下降了一半。

一种基于计数器的粗结构目录设计方法.pdf_第1页
第1页 / 共6页
一种基于计数器的粗结构目录设计方法.pdf_第2页
第2页 / 共6页
一种基于计数器的粗结构目录设计方法.pdf_第3页
第3页 / 共6页
点击查看更多>>
资源描述

《一种基于计数器的粗结构目录设计方法.pdf》由会员分享,可在线阅读,更多相关《一种基于计数器的粗结构目录设计方法.pdf(6页珍藏版)》请在专利查询网上搜索。

本发明公开一种基于计数器的粗结构目录设计方法,属于计算机系统结构技术领域;基于目录实现的Cache一致性协议,当共享数据块请求独占权限时,粗结构目录控制器根据目录项共享列表记录的信息向系统具有该数据块有效副本的处理器发送副本无效或更新消息,粗结构目录中每个目录项共享列表向量对应一组处理器,每组处理器中,任何一个处理器具有数据块的有效副本时,对应位置为1,否则为0;对每组处理器设置计数器,记录该组中。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1