作者uscer (台南清流)
看板Grad-ProbAsk
标题Re: [理工] [计组]-98成大-电机所
时间Wed Jan 27 03:54:01 2010
※ 引述《qazwsxee (小尧)》之铭言:
: ※ 引述《assassin88 (2010)》之铭言:
: : 想请问以下这一题该怎麽计算?
: : 题目:http://0rz.tw/ikLgl (第一页第二题)
: : 我用OS那种算法但求不出答案..而且不太懂他的 cache、阵列 大小该怎麽算..ˊˋ
: : 麻烦指导了~感谢。
: 有三小题
: 1 word = 4 byte = 32 bit
: 它设定 整数= 1word 代表可以存到2^(32)这麽大的数
: cache又可以存256byte这麽多
: 它问你miss rate有多少
: for 0~9999
: for 0及256
: => c=A[0]+17
: => c=A[256]+17
: if we consider only the cache activity generated by references to the array
: and we assume that integers are words
: :如果我们考虑cache仅在 参考到array[] 时才活跃的生成(成长?增加?)
: 代表只考虑array的miss比率
: 全部存取次数:10000*2=20000
: miss 次数: 回圈中只有不断 参考到 array[0]及array[256]
: 最初进去Cache时各产生1次miss(共2次)
: 剩下的19998次都可以在cache中参考到(0 miss)
: Ans: 2/20000
: 不知这样对否?
: -------------
: 换成stride=255时
: for 0~9999
: for 0,255,510
: c=A[0]+17
: c=A[255]+17
: c=A[510]+17
: 3/30000
: --------------
: 最後ㄧ个小问题我就看不懂了
: 一起讨论看看吧
------------------------------------------------------------------------------
block size = 32B = 8W
cache size = 256B
# of cache blocks = 256B/32B = 8
1.你看a[0]和a[256]对应到同一个 cache block 所以会互相踢 miss rate = 100%
2. a[0]-> block 0 ,a[255]和a[510]-> block 7 所以 miss rate = 2/3
3.变成2-way後miss rate = 0
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.35.129.251
※ 编辑: uscer 来自: 114.35.129.251 (01/27 03:54)
1F:推 qazwsxee:学到了~原来是像Hashing Function一样选位置放~谢谢 01/27 10:04