网站大量收购独家精品文档,联系QQ:2885784924

《高速缓存一致性》课件.pptVIP

  1. 1、本文档共60页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

高速缓存一致性计算机体系结构核心技术

课程概述高速缓存基础工作原理与层次结构一致性问题单处理器与多处理器环境一致性协议窥探与目录协议实现未来发展

第一部分:高速缓存基础突破性能瓶颈解决CPU与内存速度不匹配问题临时数据存储提供快速访问常用数据计算机体系结构核心

什么是高速缓存?小容量高速存储器位于CPU与主存之间访问速度极快比主存快5-10倍成本较高使用SRAM工艺制造桥接处理器与内存

高速缓存的工作原理CPU请求数据处理器发出内存地址请求缓存检查检查请求的数据是否在缓存中缓存命中数据存在则直接返回给CPU缓存缺失数据不存在则从内存加载

高速缓存的层次结构L1缓存最接近CPU核心,容量小速度快L2缓存中等容量和速度,可能独立或共享L3缓存多核共享,容量大速度较慢

高速缓存的性能指标命中率缓存命中次数与访问总次数之比命中率越高,系统性能越好访问延迟访问缓存所需的时钟周期数延迟越短,响应越快带宽单位时间内可传输的数据量带宽越大,吞吐量越高一致性开销维护数据一致性所需的额外操作开销越小,效率越高

局部性原理缓存设计基础高速缓存利用程序访问的局部性特征减少对主存的访问次数大幅提高系统整体性能两种主要类型时间局部性:近期访问的数据短期内可能再次被访问空间局部性:相邻位置的数据可能很快被访问

时间局部性循环结构程序反复访问同一数据函数调用相同函数多次执行计数器变量频繁读写的状态变量递归程序重复访问堆栈区域

空间局部性数组顺序访问连续内存位置依次访问矩阵操作按行或列扫描二维数据对象成员访问结构体相关字段连续使用流数据处理连续处理数据流中元素

第二部分:高速缓存映射直接映射每个内存块只能映射到特定缓存行全相联映射内存块可映射到任意缓存行组相联映射内存块映射到特定组内任意行

直接映射映射公式缓存行号=内存地址MOD缓存行数实现简单硬件设计复杂度低冲突率高不同内存块可能映射到同一缓存行访问速度快查找过程简单高效

全相联映射1完全灵活映射内存块可放置于任意缓存行无映射冲突缓存未满时不会发生冲突硬件复杂需并行比较所有标记成本高昂需大量比较器电路

组相联映射22路组相联每组包含2个缓存行44路组相联每组包含4个缓存行88路组相联每组包含8个缓存行1616路组相联每组包含16个缓存行

映射方式比较映射方式硬件复杂度命中率冲突可能性直接映射低较低高组相联映射中中等中全相联映射高高低

第三部分:高速缓存一致性问题数据一致性挑战多个缓存副本的同步问题数据修改如何传播至所有副本系统设计的关键技术挑战不一致情景多处理器各自缓存同一内存位置一个处理器修改自己的副本其他处理器未感知变化程序行为变得不可预测

什么是缓存一致性?基本定义确保多个缓存中共享数据副本的一致性一个处理器的写操作对所有处理器可见规则要求写传播:更新必须传播到所有副本事务序列化:所有处理器以相同顺序观察写操作保证特性每次读取返回最新写入的值程序执行结果可预测

缓存一致性产生的原因多副本存在同一数据在多个缓存中存在副本独立更新各处理器可独立修改本地副本可见性问题局部修改不自动对其他处理器可见一致性需求程序正确性要求数据视图一致4

单处理器系统中的一致性读操作先检查缓存,缺失时从内存读取写操作更新缓存,延迟或立即更新内存外部输入DMA操作可能绕过缓存直接修改内存缓存刷新需要特殊机制同步缓存与内存内容

多处理器系统中的一致性

写操作引起的不一致1初始状态所有缓存和内存中X=02处理器1写入P1缓存中X=1,内存X=03处理器2读取P2缓存从内存加载X=04不一致结果P1看到X=1,P2看到X=0

DMA操作引起的不一致缓存加载数据处理器缓存从内存读取数据DMA操作I/O设备通过DMA直接修改内存缓存数据过期缓存中的数据副本与内存不一致无感知访问处理器继续使用过期缓存数据

第四部分:缓存一致性协议窥探协议基于总线的被动监听机制适用于共享总线系统目录协议基于中央目录的主动通知机制适用于大规模系统混合协议结合窥探与目录的优点层次化实现更高扩展性

窥探协议概述基于共享总线所有处理器连接到同一总线广播机制写操作广播到所有处理器被动监听缓存控制器监听总线活动扩展性限制总线带宽成为瓶颈

写无效协议写请求处理器发出写操作请求广播无效发送无效消息到所有缓存其他缓存无效化其他处理器将对应缓存行标记为无效完成写入写入处理器获得独占访问权

写更新协议写请求处理器准备修改共享数据广播更新向所有缓存发送新值更新缓存其他处理器用新值更新本地缓存更新内存根据写策略更新主存

MESI协议M-修改状态缓存行已被修改,与内存不一致本处理器独占所有权E-独占状态缓存行未被修改,与内存一致仅在本处理器缓存中存在S-共享状态缓存行与内存一致可能存在于多个处理器缓存中I-无效状态缓存行无效必须从内存或其他缓存获取

MOESI协

文档评论(0)

185****0133 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8064063051000030

1亿VIP精品文档

相关文档