赞
踩
计算机组成原理实验报告-cache模拟器的实现
(20页)
本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!
19.90 积分
计算机组成原理实验报告学院(系)南阳理工软件学院专业移动设备应用开发班级移动二班学号姓名2017年11月7日实验1CACHE模拟器的实现一实验目的1加深对CACHE的基本概念、基本组织结构以及基本工作原理的理解。2掌握CACHE容量、相联度、块大小对CACHE性能的影响。3掌握降低CACHE不命中率的各种方法以及这些方法对提高CACHE性能的好处。4理解LRU与随机法的基本思想以及它们对CACHE性能的影响。二、实验内容和步骤1、启动CACHESIM。找到老师给的文件双击打开就启动完成(截图如下)进入页面2、根据课本上的相关知识,进一步熟悉CACHE的概念和工作机制。CACHE高速缓冲存储器。高速缓冲存储器是存在于主存与CPU之间的一级存储器,由静态存储芯片SRAM组成,容量比较小但速度比主存高得多,接近于CPU的速度。CACHE的功能是用来存放那些近期需要运行的指令与数据。目的是提高CPU对存储器的访问速度。工作机制主要由三大部分组成CACHE存储体存放由主存调入的指令与数据块。地址转换部件建立目录表以实现主存地址到缓存地址的转换。替换部件在缓存已满时按一定策略进行数据块替换,并修改地址转换部件。3、依次输入以下参数CACHE容量、块容量、映射方式、替换策略和写策略。CACHE容量块容量映射方式替换策略写策略256KB8BYTE直接映射64KB32BYTE4路组相联LRU64KB32BYTE4路组相联随机8KB64BYTE全相联LRU4、读取CACHETRACESZIP中的TRACE文件。5、运行程序,观察CACHE的访问次数、读/写次数、平均命中率、读/写命中率。CACHE的数据如上表数据先使用第一行的数据运行截图观察表中的数据通过上图可知访问次数读出次数写入次数平均命中率读出命中率写入命中率5972103791932351027452第二行的数据运行截图观察表中的数据通过上图可知访问次数读出次数写入次数平均命中率读出命中率写入命中率5972752378961654750645第三行的数据运行截图观察表中的数据通过上图可知访问次数读出次数写入次数平均命中率读出命中率写入命中率5972752374961487750643第四行的数据运行截图观察表中的数据通过上图可知访问次数读出次数写入次数平均命中率读出命中率写入命中率5972876024965673875282思考1、CACHE的命中率与其容量大小有何关系进行以下测试采用控制变量法让其容量大小分别为8KB、16KB、32KB、64KB128KB保持快容量为8B,其他因素固定不变进行测试容量大小为8KB时容量大小为16KB时为了方便一下数据直接截图命中率容量大小为32KB时容量大小为64KB时容量大小为128KB时制作图表如下CACHE容量KB快容量B映射方式替换策略写策略命中率8KB32B直接映射WRITE_THROUGH75223216KB32B直接映射WRITE_THROUGH75227932KB32B直接映射WRITE_THROUGH7523664KB32B直接映射WRITE_THROUGH752364128KB32B直接映射WRITE_THROUGH752367将所有测试的数据绘制成折线图,更清晰的展现,如下020406080100120140752275227523752375237523752375247524Y值Y值得到结论一般而言,CACHE用量越大,其CPU命中率越高,当然容量也没必要太大,当CACHE容量达到一定值时,命中率不因容量增大而有明显提高。2、CACHE块大小对不命中率有何影响进行以下测试采用控制变量法让其块量大小分别为8B、16B、32B、64B128B保持CACHE容量为32KB,其他因素固定不变进行测试(先测试对命中率影响)块容量为8B时块容量为16B时块容量为32B时块容量为64B时块容量为128B时块容量为256B时块容量为1024B时块容量为2048B时块容量为4096B时制作图表如下CACHE容量KB快容量B映射方式替换策略写策略命中率32KB8B直接映射WRITE_THROUG103695H32KB16B直接映射WRITE_THROUGH50501432KB32B直接映射WRITE_THROUGH7523632KB64B直接映射WRITE_THROUGH8760632KB128B直接映射WRITE_THROUGH93792532KB256B直接映射WRITE_THROUGH96887432KB1024B直接映射WRITE_THROUGH99202232KB2048B直接映射WRITE_THROUGH99828932KB4096B直接映射WRITE_THROUGH75236将所有测试的数据绘制成折线图,更清晰的展现,如下0500100015002000250030003500400045000001000200030004000500060007000800090001000011000Y值Y值得到结论一般而言,CACHE块越大,其CPU命中率越高,当然块也没必要太大,当CACHE块达到一定值时,命中率随着块增大反而降低。3、替换算法和相联度大小对不命中率有何影响替换策略时4路组相连时FIFO时LUR时RANDOM时收集数据制表CACHE容量快容量映射方式替换策略写策略命中率64KB32B4路组相连先进先出(FIFO)WRITE_THROURH20151864KB32B4路组相连近期最少使用(LRU)WRITE_THROURH75237864KB32B4路组相连随机发(RANDOM)WRITE_THROURH7523742路组相连时FIFOLRURANDOM收集数据制表CACHE容量快容量映射方式替换策略写策略命中率64KB32B2路组相连先进先出(FIFO)WRITE_THROURH12476164KB32B2路组相连近期最少使用(LRU)WRITE_THROURH75237764KB32B2路组相连随机发(RANDOM)WRITE_THROURH7523748路组相连时FOFOLRURANDOM收集数据制表CACHE容量快容量映射方式替换策略写策略命中率64KB32B8路组相连先进先出(FIFO)WRITE_THROURH21955964KB32B8路组相连近期最少使用(LRU)WRITE_THROURH75237764KB32B8路组相连随机发(RANDOM)WRITE_THROURH752375以上图表数据融合绘制成柱状图FIFOLRURANDOM000100020003000400050006000700080004路组相连2路组相连8路组相连图表数据保留了两位小数三个表中数据合计4路组相连2路组相连8路组相连FIFO201518124761219559LRU752378752377752377RANDOM752374752374752375从上图中可以看出LRU(命中率)FIFO命中率相连度大小的影响根据上表制表2路组相连4路组相连8路组相连000200040006000800010000120001400016000FIFOLRURANDOM随着路组增大命中率增大但是幅度偏小LRU出现下降三实验结果分析根据实验内容及上述数据结果可知ICACHE容量不同时它的命中率也会随之改变当CACHE块容量一定时,CACHE容量越大,其CPU的平均命中率越高2CACHE块大小不同时对命中率也会有影响。CACHE块容量越大,其不命中率越低3替换算法和相联度对命中率也有影响由实验数据可知,当保持相联度大小致时,替换策略为近期最少使用算法的命中率高于先进先出算法的命中率。当保持替换策略一致时,随着路组增大命中率增大但是幅度偏小LRU出现下降。四实验心得通过本次实验对命中率,访问效率,平均访问时间例题进行了理解,从而分析了CACHE容量,相关度,块大小,替换算法对命中率的影响。同时也对命中率相关计算有了了解设NC为访问访问CACHE的总命中次数NM为访问主存的次数则命中率H为HNC/NCNM设TC为命中访问CACHE时间TM为未命中访问时间平均访问时间TA平均访问时间TAHTC(1H)TM得到平均命中率命中时访问CACHE时间/平均访问时间ETC/TA通过这种实践让我们在实践的过程中加深了对知识的理解同时我们也学会了很多。收获颇多。 关 键 词: 计算机 组成 原理 实验 报告 cache 模拟器 实现
天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。