cache性能分析实验报告(共18页).docx
《cache性能分析实验报告(共18页).docx》由会员分享,可在线阅读,更多相关《cache性能分析实验报告(共18页).docx(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上计算机系统结构实验报告名 称: Cache性能分析学 院: 信息工程姓 名: 陈 明学 号: S专 业: 计算机系统结构年 级: 研 一实验目的1. 加深对Cache的基本概念、基本组织结构以及基本工作原理的理解;2. 了解Cache的容量、相联度、块大小对Cache性能的影响;3. 掌握降低Cache失效率的各种方法,以及这些方法对Cache性能提高的好处;4. 理解Cache失效的产生原因以及Cache的三种失效;5. 理解LRU与随机法的基本思想,及它们对Cache性能的影响;实验平台Vmware 虚拟机,redhat 9.0 linux 操作系统,Simple
2、Scalar模拟器实验步骤1. 运行SimpleScalar模拟器;2. 在基本配置情况下运行程序(请指明所选的测试程序),统计Cache总失效次数、三种不同种类的失效次数;3. 改变Cache容量(*2,*4,*8,*64),运行程序(指明所选的测试程序),统计各种失效的次数,并分析Cache容量对Cache性能的影响;4. 改变Cache的相联度(1路,2路,4路,8路,64路),运行程序(指明所选的测试程序),统计各种失效的次数,并分析相联度对Cache性能的影响;5. 改变Cache块大小(*2,*4,*8,*64),运行程序(指明所选的测试程序),统计各种失效的次数,并分析Cache
3、块大小对Cache性能的影响;6. 分别采用LRU与随机法,在不同的Cache容量、不同的相联度下,运行程序(指明所选的测试程序)统计Cache总失效次数,计算失效率。分析不同的替换算法对Cache性能的影响。预备知识1. SimpleScalar模拟器的相关知识。详见相关的文档。2. 复习和掌握教材中相应的内容(1) 可以从三个方面改进Cache的性能:降低失效率、减少失效开销、减少Cache命中时间。(2) 按照产生失效的原因不同,可以把Cache失效分为三类: 强制性失效(Compulsory miss)当第一次访问一个块时,该块不在Cache中,需从下一级存储器中调入Cache,这就是
4、强制性失效。这种失效也称为冷启动失效或首次访问失效。 容量失效(Capacity miss)如果程序执行时所需的块不能全部调入Cache中,则当某些块被替换后,若又重新被访问,就会发生失效。这种失效称为容量失效。 冲突失效(Conflict miss)在组相联或直接映象Cache中,若太多的块映象到同一组(块)中,则会出现该组中某个块被别的块替换(即使别的组或块有空闲位置),然后又被重新访问的情况。这就是发生了冲突失效。这种失效也称为碰撞失效(collision)或干扰失效(interference)。(3) 降低Cache失效率的方法:增加Cache块大小、提高相联度、Victim Cach
5、e、伪相联Cache、硬件预取技术、由编译器控制的预取和编译器优化。(4) 替换算法 随机法:为了均匀使用一组中的各块,这种方法随机地选择被替换的块。 最近最少使用法LRU(Least Recently Used):选择近期最少被访问的块作为被替换的块。但由于实现比较困难,现在实际上实现的LRU都只是选择最久没有被访问过的块作为被替换的块。实验内容一 关于simplescalar的简要说明SimpleScalar包括多个仿真器:sim-fast ,simsafe,sim-cache,sim-cheetah,sim-profile,sim-bpred,sim-eio和sim-outorder。
6、本次实验使用的是sim-cache,下面说明一下sim-cache。sim-cache: 在这个仿真中加入了cache,用户可以对cache及TLB 进行设置,支持两级的cache和一级的TLB,第一级cache和TLB均分为数据和指令两部分。(摘自百度百科)下面简要说明一下有关cache的信息:一般来说,Cache的结构参数主要包括以下几个方面:容量、块大小、相联度、替换算法等。在SimpleScalar模拟器中,采用了两级Cache结构,同时数据和指令Cache分开。SimpleScalar的Cache参数配置命令为:: :Cache的名称,其中:dl1:一级数据Cache;dl2:二级数
7、据Cache;il1:一级指令Cache;il2:二级指令Cache;dtlb:数据TLB;itlb:指令TLB; : 组的数目;:块大小; :相联度; :替换策略。此时,Cache容量为:*。替换策略主要有以下几种: l :LRU,最近最少使用; f : FIFO,先进先出; r : RANDOM,随机策略。例如:-cache:dl1 dl1:2048:64:4:r,表示对一级数据cache进行配置,2048表示有2048组,64表示cache块大小为64byte,4表示相联度为4,r表示替换策略为RANDOM。在此配置下,一级数据cache的容量为2048*64*4=512KB。由于Sim
8、plescalar Spec2000测试程序在其官方网站不能下载,故使用simplescalar模拟器自带的测试程序以及自己设计的一个程序进行测试。自带的测试程序是在 /root/simplescalar/simplesim-3.0/tests-pisa/bin.little目录下的test-math,test-fmath,test-llong以及test-printf。我们所有的实验内容都是对一级数据cache来进行分析的。在simplescalar中,我们使用的模拟器是sim-cache。二 simplescalar模拟器基本配置情况下的运行模拟在基本的配置情况下运行自己设计的程序,代码如
9、下:#includeMain()printf(“hello world!n”);return 0;1.编辑好程序后,将其保存在/root/simplescalar文件夹下,文件命名为hello.c,用安装好的simplescalar中的编译器sslittle-na-sstrix-gcc(它的访问目录为/root/simplescalar/bin/sslittle-na-sstrix-gcc)对其进行编译,编译后生成了能够在模拟器中可以运行的可执行文件a.out。命令行运行界面如下图所示:2.我们使用simplescalar中的模拟器sim-cache对a.out模拟执行,执行后的界面如下图所示
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- cache 性能 分析 实验 报告 18
限制150内