大连理工大学实验报告计算机系统结构实验实验四Cache性能分析学院(系):电子信息与电气工程学部专业:计算机科学与技术学生姓名:班级:学号:大连理工大学DalianUniversityofTechnology实验四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容量的增大,不同替换算法造成的不命中率差异不明显三、实验结果与分析实验结果和分析详见第二部分,实验步骤与操作方法。四、讨论、建议、质疑