大连理工大学计算机系统结构实验-实验四
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大连理工大学实验报告计算机系统结构实验
实验四Cache性能分析
学院(系):电子信息与电气工程学部专业:计算机科学与技术
学生姓名:
班级:
学号:
大连理工大学
Dalian University of Technology
实验四Cache性能分析
一、实验目的和要求
(1)加深对Cache的基本概念、基本组织结构以及基本工作原理的理解。
(2)掌握Cache容量、相联度、块大小对Cache性能的影响。
(3)掌握降低Cache不命中率的各种方法以及这些方法对提高Cache性能的好处。
(4)理解LRU与随机法的基本思想以及它们对Cache性能的影响。
二、实验步骤与操作方法
1、Cache容量对不命中率的影响。
(1)启动MyCache。
(2)用鼠标单击“复位”按钮,把各参数设置为默认值。
(3)选择一个地址流文件。方法:选择“访问地址”—>“地址流文件”选项,然后单击“浏览”按钮,从本模拟器所在文件夹下的“地址流”文件夹中选取。
(4)选择不同的Cache容量,包括2KB、4KB、8KB、16KB、32KB、64KB、128KB和256KB。分别执行模拟器(单击“执行到底”按钮即可执行),然后在下表中记录各种情况下的不命中率。
表不同容量下Cache的不命中率
(5)以容量为横坐标,画出不命中率随Cache容量变化而变化的曲线,并指明地址流文件名。
(6)根据该模拟结果,你能得出什么结论?
答:随着Cache容量的增大,不命中率降低,但是降低的幅度由较大差别,Cache容
量足够大以后,不命中率降到一定程度以后,降低效果不再明显。
2.相联度对不命中率的影响
(1)用鼠标单击“复位”按钮,把各参数设置为默认值。此时的Cache容量为64KB。
(2)选择一个地址流文件。
(3)选择不同的Cache相联度,包括2路、4路、8路、16路和32路。分别执行模拟器,然后在下表中记录各种情况下的不命中率。
表当容量为64KB时,不同相联度下Cache的不命中率
(4)把Cache的容量设置为256KB,重复(3)的工作,并填写下表。
表当容量为256KB时,不同相联度下Cache的不命中率
(5)以相联度为横坐标,画出在64KB和256KB的情况下不命中率随Cache相联度变化而变化的曲线,并指明地址流文件名。
(6)根据该模拟结果,你能得出什么结论?
答:增大相联度在一定范围内同样也能降低不命中率,不过对比不同Cache容量的两
个图可以发现,当Cache容量足够大时,其改善也变得越发不明显了。
3、Cache块大小对不命中率的影响
(1)用鼠标单击“复位”按钮,把各参数设置为默认值。
(2)选择一个地址流文件。
(3)选择不同的Cache块大小,包括16B、32B、64B、128B和256B。对于Cache的各种容量,包括2KB、8KB、32KB、64KB、128KB和512KB。分别执行模拟器,然后在下表中记录各种情况下的不命中率。
地址流文件名:all.din
地址流文件名:cc1.din
地址流文件名:eg.din
地址流文件名:spice.din
地址流文件名:tex.din
(4)分析Cache块大小对不命中率的影响。
答:对于给定的Cache容量,当块大小开始增加时,不命中率开始下降,但是有些情况到后来反而上升了。说明增加块大小会产生双重作用。
4、替换算法对不命中率的影响
(1)用鼠标单击“复位”按钮,把各参数设置为默认值。
(2)选择地址流文件all.din。
(3)对于不同的替换算法、Cache容量和相联度,分别执行模拟器,然后在下中记录各种情况下的不命中率。
表LRU和随机替换法的不命中率的比较
(4)分析不同的替换算法对Cache不命中率的影响。
答:在cache容量较小时用LRU替换算法明显比随机算法的不命中率低,而随着CACHE 容量的增大,不同替换算法造成的不命中率差异不明显
三、实验结果与分析
实验结果和分析详见第二部分,实验步骤与操作方法。
四、讨论、建议、质疑