体系结构试验报告(cache存储过程).doc

体系结构试验报告(cache存储过程).doc

ID:56123086

大小:487.00 KB

页数:9页

时间:2020-06-20

体系结构试验报告(cache存储过程).doc_第1页
体系结构试验报告(cache存储过程).doc_第2页
体系结构试验报告(cache存储过程).doc_第3页
体系结构试验报告(cache存储过程).doc_第4页
体系结构试验报告(cache存储过程).doc_第5页
资源描述:

《体系结构试验报告(cache存储过程).doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、体系结构实验报告实验目的通过程序,模拟cache存储过程,并通过控制变量法模拟分析Cache性能实验步骤:我们要通过老师所给程序进行模拟,并通过操作系统试验中老师所给算法生成出project.txt,并通过project.txt里面的数据来模拟程序的局部性等特性。一、实验结果1、比较关联方式,控制blockSize,CacheSize不变:(1)、Direct_mapped:(2)、Set_associate:(3)、Fully_associate通过上述三个比较可以看出,各种映射有自己的优点。但是不难看出,增大关联度会减小missrate,但是增加到一定程度又会有抑制作用。2

2、.比较Cache大小对于性能的影响。(1)、Direct_mapped,Cache容量为64时:(2)、Direct_mapped,Cache容量为128时:(3)、Direct_mapped,Cache容量为256时:对比实验结果,不难发现,随着Cache容量的增加,Cache的命中率一直在提升。分析原因发现,虽然Cache容量大了,但并不等于其预存的内容增多,所以命中率会上升。3、比较Cache大小对于性能的影响。(1)、Direct_mapped,关联度为1时:(2)、Direct_mapped,关联度为2时:(3)、Direct_mapped,关联度为4时:(4)、Di

3、rect_mapped,关联度为8时:(5)、Direct_mapped,关联度为16时:可以看出,随着关联度的提高,命中率也有所增加。4、比较blockNumber对于Cache性能影响。(1)、Direct_mapped,blocknumber为1时:(2)、Direct_mapped,blocknumber为2时:(1)、Direct_mapped,blocknumber为4时:通过以上三组数据不难看出,当blocknumber增加时,命中率明显增高了。分析原因可知,这是由于程序局部性原理所造成的,当一次性多拿些附近的数据,会有效的预测为下次用到的。通过程序可以看出,这种

4、方法会增加程序运行时间。习题:利用Cache模拟器CacheSimulator程序分析解决:ThefollowingCprogramisrun(withnooptimizations)onamachinewithacachethathasfour-word(16-byte)blocksandholds256bytesofdata:inti,j,c,stride,array[256];…for(i=0;i<10000;i++)for(j=0;j<256;j=j+stride)c=array[j]+5;ifweconsideronlythecacheactivitygenerate

5、dbyreferencestothearrayandweassumethatintegersarewords,whatistheexpectedmissratewhenthecacheisdirect-mappedandstride=132?Howaboutifstride=131?Wouldeitherofthesechangeifthecacheweretwo-waysetassociative?截取实验结果屏幕,分析实验结果,写出实验报告和实验心得。1、当stride=132时:Cache容量大小为256B,每个块大小为16B,所以Cacheblocks一共有16个。当访

6、问array[0]和array[132]时,分别映射到Cacheblock第0个和第1个块,因为(132/4)mod16=1。所以当第一次方位array[0]时,它会产生一次miss,并将其从memory中取出放入cache,第一次访问array[132]时也会产生一次miss,并将其从memory中取出放入cache。以后访问时都可从cache中找到,所以不论访问几次,都是2个miss。1、当stride=131时:分析:Cache容量大小为256B,每个块大小为16B,所以Cacheblocks一共有16个。当访问array[0]和array[132]时,都将映射到Cach

7、eblock第0个块,因为(132/4)mod16=0。所以当第一次方位array[0]时,它会产生一次miss,将其从memory中取出存入cache,而当其第一次访问array[131]时又产生一次miss,又将memory中的存入到cache中,所以之后每次都会miss。实验总结:通过此次实验,让我对Cache的原理有了更深的理解。Cache性能的影响是综合性的,其大小,关联度,块大小都可能影响着其最终性能。但是同时我们还发现这几种映射每个都有自己的优缺点,最终我们要通过实验证明权衡最

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。