ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:313.03KB ,
资源ID:1296124      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/1296124.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机组成原理之Cache模拟器的实现.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机组成原理之Cache模拟器的实现.docx

1、计算机组成原理之Cache模拟器的实现实验一 Cache模拟器的实现一.实验目的(1)加深对Cache的基本概念、基本组织结构以及基本工作原理的理解。(2)掌握Cache容量、相联度、块大小对Cache性能的影响。(3)掌握降低Cache不命中率的各种方法以及这些方法对提高Cache性能的好处。(4)理解LRU与随机法的基本思想以及它们对Cache性能的影响。二、实验内容和步骤1、启动Cachesim2.根据课本上的相关知识,进一步熟悉Cache的概念和工作机制。Cache概念:高速缓冲存Cache工作机制:大容量主存一般采用DRAM,相对SRAM速度慢,而SRAM速度快,但价格高。程序和数据

2、具有局限性,即在一个较短的时间内,程序或数据往往集中在很小的存储器地址范围内。因此,在主存和CPU之间可设置一个速度很快而容量相对较小的存储器,在其中存放CPU当前正在使用以及一个较短的时间内将要使用的程序和数据,这样,可大大加快CPU访问存储器的速度,提高机器的运行效率3、依次输入以下参数:Cache容量、块容量、映射方式、替换策略和写策略。Cache容量 块容量 映射方式 替换策略 写策略 8 32全相联映射先进先出算法 写回法(1)Cache容量:启动CacheSim,提示请输入Cache容量,例如1、2、4、8.。此处选择输入4。(2)块容量: 如下图所示,提示输入块容量,例如1、2、

3、4、8.。此处选择输入16。(3)映射方式: 如下图所示,提示输入主存储器和高速缓存之间的assoiativity方法(主存地址到Cache地址之间的映射方式),1代表直接映射(固定的映射关系)、2代表组相联映射(直接映射与全相联映射的折中)、3代表全相联映射(灵活性大的映射关系)。此处选择全相联映射。(4)替换策略: 如下图所示,提示输入替换策略,1代表先进先出(First-In-First-Out,FIFO)算法、2代表近期最少使用(Least Recently Used,LRU)算法、3代表最不经常使用(Least Frequently Used,LFU)、4代表随机法(Random)。

4、此处选择先进先出。(5)写策略: 如下图所示,提示输入Cache的读写操作,1代表写直达法(存直达法)即写操作时数据既写入Cache又写入主存、2代表写回法(拷回法)即写操作时只把数据写入Cache而不写入主存,但当Cache数据被替换出去时才写回主存。 此处选写回法 4、读取cache-traces.zip中的trace文件。 如下图所示,提示输入要测试的路径及名称,此处输入Cache-trace.zip的路径,以及需要读取的trace文件名,此处选择读取mcf.trace。5、运行程序,观察cache的访问次数、读/写次数、平均命中率、读/写命中率。 如下图所示,读取mcf.trace文件

5、,程序运行结果如下: 访问次数读出次数写入次数平均命中率读出命中率写入命中率 727230 5972 721258 74.8615% 60.6999% 74.9787%(1)高速缓存访问次数: 727230(2)高速缓存次数:5972(3)cache存储次数:721258(4)平均缓存命中率:74.8615%(5)高速缓存命中率:60.6999%(6)缓存命中率:74.9787%思考:1、Cache的命中率与其容量大小有何关系?(1)当Cache块容量为8B、Cache容量为8KB时,平均命中率为1.02017%.(2)当Cache块容量为8B、Cache容量为16KB时,平均命中率为1.02

6、334%.(3)当Cache块容量为8B、Cache容量为32KB时,平均命中率为1.03695%.(4)当Cache块容量为8B、Cache容量为64KB时,平均命中率为1.0375%.(5)当Cache块容量为8B、Cache容量为128KB时,平均命中率为1.03791%.当Cache块容量为8B时,不同Cache容量下的命中率如下图所示:Cache容量 8 16 32 64 128平均命中率1.02017% 1.02334% 1.03695% 1.0375% 1.03791% 由上述图中数据及表格数据可知,当Cache块容量一定时,Cache容量越大,其cache的命中率越高。 2、C

7、ache块大小对不命中率有何影响?(1)当Cache块容量为8KB、Cache容量为8B时,平均命中率为1.02017%.(2)当Cache块容量为16KB、Cache容量为8B时,平均命中率为50.4872%.(3)当Cache块容量为32KB、Cache容量为8B时,平均命中率为75.2232%.(4)当Cache块容量为64KB、Cache容量为8B时,平均命中率为87.5903%.(5)当Cache块容量为128KB、Cache容量为8B时,平均命中率为93.768%.当Cache容量为8kB时,不同Cache容量下的命中率如下图所示:Cache块容量 8 16 32 64 128平均

8、命中率1.02017% 50.4872%75.2232% 87.5903% 93.768%由上述图中数据及表格数据可知,当Cache容量一定时,Cache块容量越大,其cache的命中率越高。则其不命中率越低。 3、替换算法和相联度大小对不命中率有何影响?(1)当相联度大小保持一致,均为二路组相联映射时替换策略为先进先出算法时:当相联度为二路组相联映射,替换策略为先进先出算法时,此时cache平均命中率为0.0912598%。替换策略为近期最少使用算法时:当相联度为二路组相联映射,替换策略为近期最少使用算法时,此时cache平均命中率为66.6438%。(2)当替换算法保持一致,均为先进先出算

9、法时:相联度大小为二路:当替换策略为先进先出算法时,相联度大小为二路组相联映射时,此时cache平均命中率为0.0912598%。相联度大小为四路:当替换策略为先进先出算法时,相联度大小为四路组相联映射时,此时cache平均命中率为0.0904283%。当替换策略为近期最少使用时,相联度大小为四路组相联映射时,此时cache平均命中率为0.0904283%由上述数据可知,当保持相联度大小一致时,替换策略为近期最少使用算法的命中率高于先进先出算法的命中率。当保持替换策略一致时,相联度大小为二路组相联的命中率高于四路组相联的命中率。三.实验结果分析根据实验内容及上述数据结果可知: 1.Cache容

10、量不同时它的命中率也会随之改变; 当Cache块容量一定时,Cache容量越大,其CPU的平均命中率越高2.Cache块大小不同时对命中率也会有影响。 Cache块容量越大,其不命中率越低3.替换算法和相联度对命中率也有影响.由实验数据可知,当保持相联度大小一致时,替换策略为近期最少使用算法的命中率高于先进先出算法的命中率。当保持替换策略一致时,相联度大小为二路组相联的命中率高于四路组相联的命中率。其中替换算法对命中率的影响比较大,而相联度大小对命中率的影响小一些,在实际工作中为了提高命中率我们应该选择合适的算法。具体实验数据如下表所示:(1)当输入cache容量为8b,cache块容量为32

11、kb时出现以下数据: 访问次数读出次数写入次数平均命中率读出命中率写入命中率 727230 5972 721258 74.8615% 60.6999% 74.9787%(2)当Cache块容量为8B时,不同Cache容量下的命中率如下图所示:Cache容量 8 16 32 64 128平均命中率1.02017% 1.02334% 1.03695% 1.0375% 1.03791%(3)当Cache容量为8kB时,不同Cache容量下的命中率如下图所示:Cache块容量 8 16 32 64 128平均命中率1.02017% 50.4872%75.2232% 87.5903% 93.768%(4

12、)当控制相联度为2或4时,改变替换策略cache的命中率如下图:相联度替换策略 先进先出近期最少使用20.0912598%66.6438%40.0904283%0.0904283%四.实验心得1.通过此次的实验我发现当输入的cache容量一定时,改变cache块容量的大小则cache的命中率会改变,规律是cache块容量的值越大,则cache命中率越高,反之亦然。2.当cache块容量一定时,cache命中率因为cache容量变大而变大。3.通过这次的试验我发现书本上的很多理论都是要自己做,这样才会对实验结果及的更加牢固。以后要好好学习多做实验争取发现书本上没有写的东西这样才可以将这门课学好。4.准备越充分,实验越顺利。古人云,磨刀不误砍柴工。前期的知识储备、文献储备、材料准备、方法准备可以避免手忙脚乱,充分的预实验使你充满信心。一步一个脚印,就不必“从头再来”。最不能容忍的是在开始的几步偷懒,造成后面总有一些无法排除的障碍。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1