当前位置: 首页 > news >正文

注册的网站空间设计网站公司

注册的网站,空间设计网站公司,建e网室内设计网网址,山西网络公司哪家专业文章目录 实验3 多cache一致性算法一、实验目的二、实验说明三 实验内容1、cache一致性算法-监听法模拟2、cache一致性算法-目录法模拟 四、思考题五、实验总结 实验3 多cache一致性算法 一、实验目的 熟悉cache一致性模拟器#xff08;监听法和目录法#xff09;的使用监听法和目录法的使用并且理解监听法和目录法的基本思想加深对多cache一致性的理解。 做到给出指定的读写序列可以模拟出读写过程中发生的替换、换出等操作同时模拟出cache块的无效、共享和独占态的相互切换。 二、实验说明 学习cache一致性监听法和目录法并且进行一致性算法的模拟实验同时熟悉相关知识。 三 实验内容 1、cache一致性算法-监听法模拟 1 利用监听法模拟器进行下述操作并填写下表 以下 I 表示无效, S表示共享, E表示独占。模拟器采用不优化设置. 所进行的访问是否发生了替换是否发生了写回监听协议进行的操作与块状态改变CPU A 读第5块替换 Cache A的块1否CPU A读不命中, Cache A发出BusRd信号, 存储器第5块经Bus传送到Cache A第1块, Cache A第1块状态从I变成SCPU B 读第5块替换Cache B的块1否CPU B读不命中, Cache B发出BusRd信号, 存储器第5块经Bus传送到Cache B第1块, Cache B第1块状态从I变成SCPU C 读第5块替换Cache C的块1否CPU C读不命中, Cache C发出BusRd信号, 存储器第5块经Bus传送到Cache C第1块, Cache C第1块状态从I变成SCPU B 写第5块否否CPU B写命中, Cache B向Bus发出写作废信号, Cache A第1块和Cache C第1块状态都从S变成I, Cache B第1块状态从S变成ECPU D 读第5块替换 Cache D的块1Cache B的块1写回CPU D读不命中, Cache D发出BusRd信号, Cache B监听到后把它的第1块写回到存储器第5块, 然后状态从E变成I。之后该块又从存储器传送到Cache D第1块, 状态设为ECPU B 写第21块替换CacheB 的块1否CPU B写不命中, Cache B发出BusRdx信号, 存储器第21块经Bus传送到Cache B第1块, 将原本的第1块替换出去, 状态设为ECPU A 写第23块替换CacheA的块3否CPU A读不命中, Cache A发出BusRdx信号, 存储器第23块经Bus传送到Cache A第3块, 状态设为ECPU C 写第23块替换CacheC的块3CacheA的块3写回CPU C写不命中, Cache C发出BusRdx信号, Cache A监听到该信号, 将其第3块写回到存储器第23块, 同时Cache A中该块状态改为I。之后存储器第23块传送到Cache C第3块, 状态设为ECPU B 读第29块替换CacheB的块1CacheB的块1写回CPU B读不命中, Cache B发出BusRd信号, 存储器第29块经Bus传送到Cache B第1块, 将原来的块替换出去, 将状态设为SCPU B 写第5块替换CacheB的块1否CPU B写不命中, Cache B发出BusRdx信号, Cache D监听到该信号后将其第1块作废, 存储器第5块传送到Cache B第1块, 替换原来的块, 状态设为E 2 请截图展示执行完以上操作后整个cache系统的状态 监听法的基本原理是每个处理器核心的缓存都可以监视监听其他核心对共享数据的读写操作。当一个处理器核心对共享数据进行写入时它会发送一个写入操作的通知invalidate、update等给其他核心的缓存告知它们更新或无效化相应的缓存行。其他核心的缓存会在收到通知后根据通知的类型进行相应的操作。 以下是监听法模拟的基本步骤 每个处理器核心的缓存行都包含一个有效位valid bit用于表示缓存行是否有效以及一个标签tag用于唯一标识该缓存行所存储的内存地址。当一个处理器核心对共享数据进行写入操作时它首先检查自己的缓存中是否存在该数据的缓存行。如果存在它将更新缓存行中的数据并将该缓存行标记为“已修改modified”。同时该核心会发送一个写入操作的通知给其他核心的缓存通知它们该缓存行已经被修改。这个通知可以是无效化invalidate操作或更新update操作具体的实现方式取决于具体的监听法协议。其他核心的缓存在接收到通知后根据通知的类型进行相应的操作 如果接收到无效化操作则将自己的缓存行标记为无效invalid以后再访问该数据时需要从主内存或其他核心的缓存中重新获取。如果接收到更新操作则将自己的缓存行中的数据更新为最新的数据。 当一个处理器核心需要读取共享数据时它首先检查自己的缓存中是否存在有效的缓存行。如果存在有效的缓存行则直接读取缓存中的数据。如果缓存行无效则需要从主内存或其他核心的缓存中获取最新的数据。 通过监听法模拟每个核心都能感知到其他核心对共享数据的操作并及时进行相应的缓存行更新或无效化从而保持多核系统中缓存中的数据一致性。这种方式能够有效解决多核处理器中共享数据的一致性问题提高系统的可靠性和性能。 2、cache一致性算法-目录法模拟 1利用目录法模拟器进行下述操作并填写下表 所进行的访问监听协议进行的操作与块状态改变CPU A 读第6块Cache A读不命中 从本地存储器中传送第6块到Cache A第2块, Cache A该块状态设为S, 存储器中第6块状态也设为S, 将对应A的presence bit置1CPU B 读第6块Cache B读不命中, 通过互联网络从宿主存储器中传送第6块到Cache B第2块, Cache B该块状态设为S, 存储器中将对应B的presence bit置1CPU D 读第6块Cache D读不命中, 通过互联网络从宿主存储器中传送第6块到Cache D第2块, Cache D该块状态设为S, 存储器中将对应D的presence bit置1CPU B 写第6块Cache B写命中, 向宿主存储器发送写命中信号, 宿主存储器向A, D发送作废信号, 将第6块的A, D对应的presence bit复位, 将块状态设为E。 Cache B写第2块, 将块状态设为ECPU C 读第6块Cache C读不命中, 向宿主存储器发送读缺失信号, 宿主存储器向Cache B发送Fetch信号, Cache B将其第2块状态设为S, 向宿主存储器写回该块。宿主存储器收到该块后将状态设为S, 将C对应的presence bit置1, 将该块传送给Cache C, Cache C将该块状态设为SCPU D 写第20块Cache D写不命中, Memory C通过互联网络从宿主存储器中传送第20块到Cache D第0块, Cache D该块状态设为E, 存储器中将对应D的presence bit置1, 块状态设为ECPU A 写第20块Cache A写不命中, 向宿主存储器中发送Write miss, 宿主存储器向Cache D发送Fectch信号, Cache D将其第0块写回宿主存储器, 将块状态设为I。 存储器中将对应D的presence bit复位, 将A对应的presence bit置1, 块状态设为E, 将该块传送给Cache A。 Cache A中该块状态设为ECPU D 写第6块Cache D写不命中, 向宿主存储器发送Write miss, 宿主存储器向Cache D传送该块, 将对应B, C的presence bit复位, 将D对应的presence bit置1, 块状态设为E, 向Cache B, C发出作废信号。Cache D中该块状态设为E。 Cache B, C均将该块状态设为ICPU A 读第12块Cache A读不命中, 第12块要替换出Cache A中的第0块, 先将原本的第0块写回到宿主存储器第20块, 存储器中第20块状态变成未缓冲。宿主存储器将第12块的状态设为S, 将A对应的presence bit置1, 将该块传送给Cache A。 然后换入, 块状态设为S 2请截图展示执行完以上操作后整个cache系统的状态 目录法的基本原理是每个缓存块都有一个对应的目录项。目录项中记录了该缓存块在哪些核心的缓存中被缓存以及该缓存块的共享状态。 以下是目录法模拟的基本步骤 每个处理器核心的缓存块都包含一个有效位valid bit用于表示缓存块是否有效以及一个标签tag用于唯一标识该缓存块所存储的内存地址。每个缓存块的目录项记录了哪些核心的缓存中包含该缓存块的副本并记录了每个核心对该缓存块的共享状态例如“独占exclusive”、“共享shared”、“无效invalid”等。当一个处理器核心需要读取共享数据时它首先检查自己的缓存中是否存在该数据的缓存块。如果存在有效的缓存块它会从该缓存块中读取数据。如果缓存块无效则需要从主内存或其他核心的缓存中获取最新的数据。当一个处理器核心对共享数据进行写入操作时它首先检查自己的缓存中是否存在该数据的缓存块。如果存在有效的缓存块并且该缓存块的共享状态为“独占”表示该核心是唯一一个拥有该数据副本的核心那么该核心可以直接在缓存块中更新数据。如果存在有效的缓存块但其共享状态为“共享”表示其他核心也拥有该数据的副本那么该核心需要向目录发送一个请求请求将该缓存块的共享状态变为“独占”。同时目录会向其他包含该数据副本的核心发送无效化操作让它们将缓存块标记为无效。当其他核心的缓存接收到无效化操作时它们将对应的缓存块标记为无效。如果其他核心的缓存块在之后的访问中需要读取或写入该数据它们需要从主内存或其他核心的缓存中重新获取最新的数据。 通过目录法的模拟每个核心都可以通过目录来获取共享数据的最新状态同时协调共享数据的访问。目录维护了所有共享数据的副本信息和共享状态通过协调缓存之间的通信和状态转换确保多核处理器系统中缓存的一致性。 四、思考题 目录法和监听法分别是集中式和基于总线两者优劣是什么 答 监听法 优点核数较少时总线压力较小成本低效果好. 缺点需要通过总线广播一致性相关信息. 总线上能够连接的处理器数目有限。当核数增多时总线冲突增加, 监听带宽成为瓶颈 目录法 优点使用集中目录来记录每个cache块的状态不需要总线广播一致性信息, 总线压力小。 缺点需要维护目录数据结构, 随着核数增加时目录的开销变大。 五、实验总结 在我进行对cache一致性模拟器的实验过程中我深入研究了监听法和目录法这两种常见的cache一致性协议。通过实际的模拟器操作我对这两种协议的原理和工作机制有了更深入的理解。 首先我发现监听法是一种基于总线的cache一致性协议。在这个协议中所有的缓存控制器都通过总线来监听其他缓存控制器的操作。当一个缓存控制器修改了共享数据时它会通过总线发送一个信号让其他缓存控制器将对应的缓存行置为无效。这样其他缓存控制器在需要访问这个缓存行时就会重新从内存中读取最新的数据保证了数据的一致性。通过实验我清晰地观察到了监听法的特点简单、易于实现但是总线的带宽成为性能瓶颈并且在大规模系统中会导致严重的总线竞争问题。 其次我研究了目录法这是一种基于目录的cache一致性协议。在这个协议中每个缓存控制器都维护了一个目录表用于记录共享数据的状态和位置。当一个缓存控制器修改了共享数据时它会向目录表发送一个更新请求将对应的缓存行置为无效或者共享状态。其他缓存控制器在需要访问这个缓存行时需要先向目录表发出请求获取该数据的状态和位置信息然后根据相应的状态进行操作。通过实验我发现目录法相对于监听法来说减轻了总线的压力提高了并发度和扩展性。然而目录的维护和更新会带来一定的开销特别是在多处理器系统中。 其他缓存控制器在需要访问这个缓存行时需要先向目录表发出请求获取该数据的状态和位置信息然后根据相应的状态进行操作。通过实验我发现目录法相对于监听法来说减轻了总线的压力提高了并发度和扩展性。然而目录的维护和更新会带来一定的开销特别是在多处理器系统中。 通过这次实验我不仅对cache一致性的概念和原理有了更深入的理解还通过实际模拟操作加深了对监听法和目录法的理解。我认识到在设计和选择cache一致性协议时需要综合考虑系统规模、性能需求、开销以及硬件限制等方面的因素。不同的协议适用于不同的场景了解它们的特点和优缺点有助于我们做出合适的选择。同时我也意识到cache一致性对于多处理器系统的正确性和性能具有重要影响因此在实际应用中需要仔细权衡
http://www.dnsts.com.cn/news/33316.html

相关文章:

  • 甜品蛋糕网站建设策划书如何用python打开wordpress
  • 营销网站seo推广费用微信公众账号登录官网
  • 厦门 微网站建设公司哪家好企业网站建设设计公司
  • 精品课程网站开发的创新点长沙核酸检测点
  • 网站建设淘宝详情页企业查天眼查在线
  • wordpress 写文章权限在线网站优化公司
  • 设计网站官网入口网页设计参考板式
  • 便宜做网站怎么样wordpress留言发送邮件
  • 北京网站建设制作公司互联网营销外包公司
  • 企业网站开发所需要的模块建设网站实训心得体会
  • 网站底部的备案信息网站加载优化
  • 深圳网站建设-龙华信科赣州微网站建设费用
  • 国外比较好的建筑设计网站网站开发架构师
  • 江夏网站建设外贸网站建设免费
  • 站群 wordpresswordpress建站 图片
  • 网站开发招标技术规范书什么是电子商务行业
  • 手机网站自助建百度信息流投放方式有哪些
  • 美工做任务网站wordpress 去除图片
  • 如何查找网站建设时间做集团网站的
  • 满洲里建设局网站wordpress手机版切换
  • 腕表手表网站网站推广的工作内容
  • 上海网站搭建做阿里巴巴网站需要哪些资料
  • 网站建设有哪些优质公众号电子商务网站设计与制作
  • 枣强网站建设电话wordpress 显示分类名称
  • 秦皇岛工程建设信息网站宁德seo培训
  • 计算机网站建设 是什么意思今天福州发生的重大新闻
  • 网站研发费用吗郑州app开发公司排名
  • 亚马逊欧洲站个人手机网站开发
  • 现在中国空间站有几个人重庆网站设计案例
  • 长沙做网站微联讯点不错黄冈网站推广策略