实验4 Cache性能分析【计算机系统结构】

这篇具有很好参考价值的文章主要介绍了实验4 Cache性能分析【计算机系统结构】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

2023-6-16 21:19:13

以下内容源自《【计算机系统结构】》
仅供学习交流使用

推荐

实验3 Tomasulo算法【计算机系统结构】

实验四 Cache性能分析

1 实验目的

(1)加深对Cache的基本概念、基本组织结构以及基本工作原理的理解。
(2)掌握Cache容量、相联度、块大小对Cache性能的影响。
(3)掌握降低Cache不命中率的各种方法。

2 实验平台

采用MyCache模拟器。
MyCache模拟器的使用方法:
(1) 双击MyCache.exe,启动模拟器。

(2) 系统打开操作界面,如下图所示:

MyCache-Cache模拟器
设置参数区 模拟结果显示区
执行控制区
(3) 可以设置的参数包括Cache的容量、块大小、相联度、替换算法、预取策略、写策略、写不命中时的调块策略。可以直接从列表中选择。
(4) 访问地址可以选择来自地址流文件,也可以选择手动输入。如果是前者,则可以通过单击“浏览”按钮,从模拟器所在文件夹下的“地址流”文件夹中选取地址流文件(.din)文件,然后执行。执行得方式可以是单步,也可以选择一次执行结束。如果选择手动输入,就可以在“执行控制”区域中输入块地址,然后单击“访问”按钮。系统会在界面的右边显示访问类型、地址、块号以及块内地址。
(5) 模拟结果包括:

  • 访问总次数,总的不命中次数,总的不命中率。
  • 读指令操作的次数,其不命中次数及其不命中率。
  • 读数据操作的次数,其不命中次数及其不命中率。
  • 写数据操作的次数,其不命中次数及其不命中率。
  • 手动输入单次访问的相关信息。

3 实验内容和步骤

3.1 Cache容量对不命中率的影响

(1) 启动MyCache。
实验4 Cache性能分析【计算机系统结构】

(2)单击“复位”按钮,将各参数设置为默认值。
实验4 Cache性能分析【计算机系统结构】

(3)选择一个地址流文件。具体方法:选择“访问地址”→“地址流文件”选项,然后单击“浏览”按钮,从本模拟器所在的文件夹下的“地址流”文件夹中选取。
实验4 Cache性能分析【计算机系统结构】

(4) 选择不同的Cache容量,包括2KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB和256 KB,分别执行模拟器(单击“执行到底”按钮就可执行),然后在表1中记录各种情况下的不命中率。
地址流文件名: all.din

实验4 Cache性能分析【计算机系统结构】

(5) 指明地址流文件名,以容量为横坐标,画出不命中率虽Cache容量变化而变化的曲线图。

实验4 Cache性能分析【计算机系统结构】

图1 all.din文件中不同Cache容量下的不命中率

(6) 根据该模拟结果,能得出什么结论?
增加Cache容量可以有效地减少Cache的不命中率。

3.2 相联度对不命中率的影响

(1) 单击“复位”按钮,将各参数设置为默认值。此时的Cache容量为64KB。
(2) 选择一个地址流文件。具体方法:选择“访问地址”→“地址流文件”选项,然后单击“浏览”按钮,从本模拟器所在的文件夹下的“地址流”文件夹中选取。
(3) 选取不同的Cache相联度,包括直接映像、2路、4路、8路、16路和32路。分别执行模拟器(单击“执行到底”按钮),然后在表2中记录各种情况下的不命中率。
实验4 Cache性能分析【计算机系统结构】

(4) 把Cache的容量设置为256KB,重复(3)步骤填表3。

实验4 Cache性能分析【计算机系统结构】

(5) 以相联度为横坐标,画出在64KB和256KB的情况下不命中率随Cache相联度变化而变化的曲线。并指明地址流文件名。
实验4 Cache性能分析【计算机系统结构】

(6) 根据模拟结果,你能得出什么结论?
提高相联度可以减少Cache的不命中率。

3.3 Cache块大小对不命中率的影响

(1) 单击“复位”按钮,将各参数设置为默认值。
(2) 选择一个地址流文件。具体方法:选择“访问地址”→“地址流文件”选项,然后单击“浏览”按钮,从本模拟器所在的文件夹下的“地址流”文件夹中选取。
(3) 选择不同的Cache块大小,包括16B,32B,64B,128B和256B。对于Cache的各种容量,包括2KB,8 KB,32 KB,128 KB和512 KB,分别执行模拟器(单击“执行到底”),然后在表4中记录各种情况下的不命中率。

实验4 Cache性能分析【计算机系统结构】

(4) 分析Cache块大小对不命中率的影响。
1.增强了空间局部性,减少了强制性不命中;
2.减少了Cache中块的数目,所以有可能会增加冲突不命中。

3.4 替换算法对不命中率的影响

(1) 单击“复位”按钮,将各参数设置为默认值。
(2) 选择地址流文件all.din。
(3) 对于不同的替换算法、Cache容量和相联度,分别执行模拟器(单击“执行到底”按钮),在表5中记录各种情况下的不命中率。
实验4 Cache性能分析【计算机系统结构】
(4) 分析不同的替换算法对Cache不命中率的影响。
在Cache容量较小时,LRU算法的不命中率低于随机算法,当Cache容量较大时,两者差距不明显。

4 实验总结与心得

通过本次实验,我加深了对Cache的基本概念、基本组织结构以及基本工作原理的理解,掌握了Cache容量、相联度、块大小对Cache性能的影响,掌握了降低Cache不命中率的各种方法。

5 请思考

通过前面的仿真过程主要理解了影响Cache命中率的因素。命中率会影响Cache系统性能,但评价Cache系统性能应该考虑到访问的缺失代价的问题。更好的评价Cache系统性能的思想是存储器平均访问时间:
存储器平均访问时间=Cache命中时间+Cache命中缺失率╳缺失代价
请从此思路出发,分析Cache性能优化方法。用自己的语言总结这些优化方法的思想。通过查找资料,举出某些采用上述优化方法机器实例。
思想:提升命中率,降低缺失代价,减少命中时间。
实例:ADM Opteron的存储器。

最后

2023-6-16 21:26:01

你对我百般注视,
并不能构成万分之一的我,
却是一览无余的你。

祝大家逢考必过
点赞收藏关注哦文章来源地址https://www.toymoban.com/news/detail-486961.html

到了这里,关于实验4 Cache性能分析【计算机系统结构】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 计算机内存中的缓存Cache Memories

    这篇写一下计算机系统中的 缓存Cache 应用场景和实现方式介绍。 Memory hierarchy 在讲缓存之前,首先要了解计算机中的内存结构层次Memory hierarchy。也就是下图金字塔形状的结构。 从上到下,内存层次结构如下: 寄存器 :这是计算机中最快速的存储区域。它们位于处理器内,

    2024年02月15日
    浏览(26)
  • 【计算机组成原理·笔记】Cache主存映射和辅存

    主存中的任意一个块,对映指定的一个 cache块,但 一个 cache块 可以对映多个主存块,在 cache的标记中,有标记标识当前 cache块对应着哪些主存区块。 利用率较低,可能会冲突 主存任意的一块,可以被放入 cache中的任意的一个块中。 利用率高 查询速度慢,查询某主存块是否

    2024年02月08日
    浏览(37)
  • 【计算机组成原理】高速缓冲存储器 Cache 的三种映射方式(Cache Mapping)

    缓存是计算机系统中常见的一种高速存储器,用于临时存储常用数据,以便快速访问。在缓存中,有三种常见的映射方式,分别是直接映射、全相联映射和组相联映射。 在直接映射中,每个主存块只能映射到缓存中的一个特定位置。该位置是通过对主存块的某个地址的一部分

    2024年01月19日
    浏览(39)
  • 计算机组成原理(4)-----Cache的原理及相关知识点

    目录 1.Cache的原理 2.Cache的性能 3.Cache和主存的映射方式  (1)全相联映射 (2)直接映射 (3)组相联映射 4.替换算法 (1)随机算法(RAND) (2)先进先出算法(FIFO) (3)近期最少使用(LRU) (4)最近不经常使用(LFU) 5.Cache写策略 (1)写命中 •写回法 •全写法 (2)写不命中 •写分配法 •非写分

    2024年02月21日
    浏览(43)
  • 【计算机组成原理】高速缓冲存储器 Cache 的写策略(Writing Policy)

    缓存的写策略指的是确定何时将数据写入缓存或主存的策略。 在全写法策略中,每次发生写操作时都会将数据同时写入缓存和主存。这样可以保证数据的一致性,但会增加主存的写入操作,降低写入性能。需要设置写缓存(Write Buffer)。 在写回策略中,当缓存中的数据发生

    2024年02月02日
    浏览(39)
  • 计算机网络管理 实验4(二) SNMP报文管理信息结构SMI及其规定的ASN.1分析并使用Wireshark抓包分析sysContact的相关信息

    ⬜⬜⬜ 🐰🟧🟨🟩🟦🟪(*^▽^*)欢迎光临 🟧🟨🟩🟦🟪🐰⬜⬜⬜ ✏️write in front✏️ 📝个人主页:陈丹宇jmu 🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝​ 🙉联系作者🙈by QQ:813942269🐧 🌈致亲爱的读者:很高兴你能看到我的文章,希望我的文章可以帮助到你,祝万事

    2024年02月09日
    浏览(38)
  • 【CS202计算机组成原理】一次性搞懂cache中size, block, index, offset, tag相关计算

    首先应该弄懂一个概念叫:按字节编址或寻址。 指的是存储空间的 最小编址单位是字节(byte) ,也就是说一个地址对应1 byte的内存空间。同理,按字编址,是指存储空间的最小编址单位是字(word)。 以下举例均为(Direct Mapped Cache)。 Memory Size :就是内存的大小,最小单位根据(

    2024年02月02日
    浏览(33)
  • 计算机组成原理 --- 计算机性能指标

    一.存储器的性能指标 1.MAR是地址寄存器,MDR是数据寄存器 2.MAR的位数能够体现最多存多少个地址,而每个地址就代表一个存储单元,所以MAR的位数能表示存储器中有多少个存储单元 3.MDR是数据寄存器,它的容纳极限 = 每个存储单元的容纳极限 --- 如果MDR的容纳极限小于存储单

    2023年04月08日
    浏览(61)
  • 计算机操作系统实验:进程调度实验

    前言 二、实验目的 三、实验要求 四、实验原理 五、实验过程 六、代码详解 总结 计算机操作系统是管理计算机硬件和软件资源的核心软件,它负责为用户提供一个友好、高效、安全的使用环境。进程调度是操作系统的一个重要功能,它决定了进程在处理器上的执行顺序和时

    2024年02月07日
    浏览(39)
  • 计算机系统实验2:炸弹实验bomb

    炸弹实验 本次实验为熟悉汇编程序及其调试方法的实验。 实验内容包含2个文件bomb(可执行文件)和bomb.c(c源文件)。 实验主题内容为:程序运行在linux环境中。程序运行中有6个关卡(6个phase),每个phase需要用户在终端上输入特定的字符或者数字才能通关,否则会引爆炸

    2023年04月26日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包