ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:892.41KB ,
资源ID:13070894      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/13070894.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(cache相关的国内外研究热点文档格式.docx)为本站会员(b****9)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

cache相关的国内外研究热点文档格式.docx

1、.4.DIP 数据插入策略动态选择机制54.1. Global DIP 动态策略选择机制54.2. DSS 动态策略选择机制6第 2 章Cache 一致性协议7.1.符号一致性协议(Token Coherence)71.1. 一个启发式例子71.2. 正确性底层(Correctness Substrate)协议81.3. 持续性请求81.4. 性能协议(Performance Protocols)91.5. TokenB 协议:面向多处理器的整合。101.6. 对符号协议性能评估10.2.自适应监听:通过在多处理器中嵌入一个向前过滤环102.1. 消息顺序和基于环的协议( Message Or

2、dering & Ring Based Protocols)112.2. 自适应的监听122.3. 灵活可变的的监听算法(Algorithms for Flexible Snooping)14第 3 章互联线对 cache 性能的影响163.1. 互联线相关的 cache 一致性协议163.2. 大型 NUCA 体系 cache 的互联线设计16第 4 章Cache 一致性模型和存储器流模型两种存储模型的比较194.1. cache 一致性(Incoherent Cache-based )模型194.2. 流模型(stream Memory Modal)204.3. 定性比较204.4. CM

3、P 体系架构214.5. 评估方法224.6. 比较总结24个人心得25参考文献26第 1 章新的 Cache 插入原则.1.LRU 的缺陷在 cache 数据插入原则当中,LRU 是最好的选择吗?我之前一直认为 LRU 是最接近理想状况一直的替换原则,但是事实并非如此。LRU 替换原则存在缺陷。首先,如果只采用 LRU,当需要经常被 cache 用到的数据大小比 cache 的 size 大时, 那么采取 LRU 替换原则会产生 thrashing。这是因为替换前后的数据有一定的相关性,LRU 的替换原则是将新数据放到 MRU 上。这样一来,可能被替换出去的数据可能马上又会被用到,而很多没有

4、被替换的 LRU 位置上的数据实际上并不可能总是被用到。所以 cache 的访问需要再次 access memory。在有大量大块数据需要被替换的情况下,大概有 60%的时间花费在 L2 cache 载入数据这个过程中。如果在正被用作工作的存储空间比 cache 的可用空间要大,那么留一些活动集和的cache 数据是有利于 cache 命中的。Monuddin J.Q 等1对于高性能 cache 提出一种自适应的cache 替换算法。他们的研究在插入策略上改动了一点点,但是能有效提高需要大量数据存储替换的任务性能。.2.LIP 数据插入原则数据在插入到 MRU 位置上时,会被优先得到访问,因为

5、数据遍历是从 MRU 到 LRU这样的顺序进行的。对于时间局部性较高的数据而言,如果数据工作集的数据量比可用cache 小的时候,将数据插入到 MRU 位置上,访问的命中率更高。但是数据如果工作集数据量要比可用 cache 的大小大很多时,就会产生 thrashing。因为很有可能刚刚替换进去的数据马上又被替换出来了。因此,他们提出在 LIP(LRU Insertion Policy)数据插入原则。过程很简单,只有两个步骤:(1) 如果在经常被 cache 用到的数据大小比 cache 的 size 大时,将所有的新数据放到LRU 位置上,而不是 LRU 所采用的 MRU 位置上。(2) 在

6、LRU 位置上的数据被处理器访问到之后,这些数据会被迁移到 MRU 位置上。如此一来,数据先被放到 LRU 位置上,处理器开始访问,由于 LRU 上的数据是处理器正需要的数据,所以马上会被放到 MRU 位置上,如此一来,无形中扩大了可用 cache 的大小。当数据并未被访问到的时候,继续向存储器要数据,但是这个时候并不是全部将需要的数据给替换,根据替换原则,LRU 位置上的数据会留下一些 fraction,以利于访问命中。LIP 插入原则相对与 LRU 而言,提高了需要大量数据访问的任务的性能,但是对于需要数据量比可用 cache 空间小的时候,并没有优势,因为数据访问过程中访问 LRU 位置

7、上数据的代价要比 MRU 位置上数据代价大。因为本身它是与 LRU 替换原则想背驰的。.3.BIP 插入原则为了能让替换更有效,采取了 BIP(Bimodal Insertion Policy),(LIP 经过固定数量的miss 后,新进来的数据被置于 MRU 的位置上)。这是因为 LIP 在处理循环引用模式的 misshit 的数据时,性能并不好。循环引用数据会引起数据替换的死循环。BIP 控制了一个参数,叫做 bimodal throttle parameter, 控制了新进来的数据被替换到 MRU 位置上的百分比。当 = 0 的时候,就是 LIP; = 1 时,就是 LRU。通过改变,能

8、够使 BIP 适应工作集合的改变,并做到 thrashing 保护。为了分析 LIP 和 BIP,通过模型分析。若 ai 表示 cache 的数据地址。(a1,a2,aT)表示对 a1,a2,aT 数据的一次数据引用访问,时序序列(a1,a2,aT)N 表示对该数据引用访问 N 次。在(a1,a2,aT)N 后紧跟数据访问(b1,b2,bT)N,访问的是一个全相连的的cache,包含的可用空间为 K(K T,N K/。表 1.1给出了 LRU,OPT(理想情况),LIP,BIP 的命中率。表 1.1 LRU, OPT, LIP, BIP 对于例子的命中情况LRU 命中率为 0 是因为发生了 t

9、hrashing,而 LIP 由于不允许第二个序列进入到 cache 的 MRU 中,导致了第二个序列的零命中。对于 BIP 而言,由于其概率性可允许数据进入到 MRU 位置,第二个序列访问 cache 时,经过 K/ 失配后,所有的数据都会属于第二个序列。.4.DIP 数据插入策略动态选择机制DIP(Dynamic Insertion Policy),通过评估 LRU 和 BIP 失配的比较,动态地在 LRU 和BIP 中切换 policy 的机制。4.1. Global DIP 动态策略选择机制图 1.1 全局 DIP最直观的方法实现 DIP 是为数据提供全局的 tag 目录,数据集为 L

10、RU 和 BIP 都维持一个 tag,跟踪哪种策略实现得更好。动态得计算数据集分别用 LRU 和 BIP 替换策略的失配, 通过因子权重计算后做全局决策。如图 1.1 所示。4.2. DSS 动态策略选择机制全局选择机制需要维持两个 tag 目录,代价比较大。M. K. Qureshi 2等提出通过DSS(Dynamic Set Sample)可以显著减少硬件消耗代价。Set Sample 是指在选择 DIP 策略时候选择数据的集合。如图 1.2 所示,部分数据通过 LRU 替换策略,部分数据集合通过 BIP 数据调度策略。划分给 LRU 策略的数据集合发生 cache 失配时,递增 PESL

11、 的值;划分给 BIP 策略的数据集合发生 cache 失配时,递减 PESL 的值。当下一个未知的数据集合到来时,如果 PESI = 0,那么采用 LRU,否则采用 BIP。图 1.2 DSS DIPDSS 牵涉到一个问题,怎样给两种策略分配数据集合。数据集合策略分配可以是动态分配,也可以是静态设计时候的分配。他们的研究中给出了一种分配的办法,初始状态下, 将部分数据均匀的分配给各种策略。比如说,有 1024 个集合,那么每隔 33 个集合,0,33分配给 LRU,每隔 31 个集合,如 1,32分配给 BIP。我个人觉得这个分配有欠妥当,因为一个数据在未知采用何种分配策略更好,就初始化,并

12、不是一个好提议。文中提到了动态分配未知的,没有说到如何改变已知的,或者我并未彻底了解这个分配的动态变化过程(文献1中有一段对 set dueling 的数学证明,不是很明白)。如果要性能达到最好,数据的替换策略不仅仅是动态选择,更是需要动态改变的。最后,通过与 LRU、BIP 等做了性能比较,使用 DIP 后对于标准测试程序的 cache 命中率有了大幅度提高。第 2 章Cache 一致性协议目前的cache一致性一般靠两种方式实现:添加公用的cache-to-cache失配(目录协议) 或者需要全序的互联线(传统的基于总线的监听协议)。在实现低延时的cache一致性的问题上,这两种协议性能都

13、很低。.1.符号一致性协议(Token Coherence)M Martin 等3陈述了一种新的一致性框架协议,这个协议能优化一般的cache一致性实例,并潜在得解决速率问题、提高安全性、减少了饥饿。这个协议称作为符号一致性(Token Coherence)协议。他们中的协议由两部分组成:精确性底层协议和性能协议。底层协议提出了数据块的记号机制,将每个数据块都关联固定数量的记号,处理器只有拥有了特定记号数量下才能进行读写访问;对于避免饿死,底层协议提供持续性消息;性能协议提出了短暂性请求,并且满足请求的处理方式。他们还提出了符号一致性中的一个特殊协议,TokenB协议,能够整合无序多处理器,

14、实现低延时。通过实验表明,在正常工作量下,他们所提出的新的一致性协议要比传统的监听协议和目录协议做得好。1.1. 一个启发式例子传统的基于无效性的协议允许一个共享数据能够被一个拥有写权限的处理器和一批拥有读权限的处理器共同访问,当然这些处理器不能对该数据不能同时操作。当一个处理器需要进行读或者写操作时,先通过在无序低延时的互联线上广播一个操作消息。但是这个操作消息很有可能不正确,因为网络的拓扑结构和消息路由的顺序原因。一旦不正确,处理器就会读到较旧的数据。如图2.1a所示,P0要对一个数据块进行读和写操作,P1只要进行如操作。在时刻,P0将它的操作请求进行广播,在时刻,P1捕捉到该请求,并在时刻返回给P0(假设数据的

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1