计算机组织结构 第七章重要练习题详解

考查:Cache的失效率和平均访存时间

题目1: 假设对指令Cache的访问占全部访问的75%;而对数据Cache的访问占全部访问的25%。 Cache 的命中时间为 1 个时钟周期,失效开销为 50 个时钟周期,在混合 Cache 中一次 load 或 store 操作访问 Cache 的命中时间都要增加一个时钟周期,32KB 的指令 Cache 的失效率 为 0.39%,32KB 的数据 Cache 的失效率为 4.82%,64KB 的混合 Cache 的失效率为 1.35%。又假设采用写直达策略,且有一个写缓冲器,并且忽略写缓冲器引起的等待。

(1)试问指令 Cache 和数据 Cache 容量均为 32KB 的分离 Cache 和容量为 64KB 的混合 Cache 相比,哪种 Cache 的失效率更低?

(2)两种情况下平均访存时间各是多少?


解:
(1)实际上考的是两种方案的性能对比。

  • 32KB方案的:
    指令失效率:0.39%
    数据失效率:4.82%

75%*0.39%+25%*4.82%=1.4975%

  • 64KB方案的:
    混合失效率:1.35%

所以 ,32KB的策略失效率更高

(2)求平均访存时间:
平均访存时间=指令所占的百分比×(读命中时间+读失效率×失效开销)+ 数据所占的百分比×(数据命中时间+数据失效率×失效开销)

  • 第一种方案:

75%×(1+0.39%×50)+25%×(1+4.82%×50) =(75%×1.195)+(25%×3.41) =1.74875

  • 第二种方案:

75%×(1+1.35%×50)+25%×(1+1+1.35%×50) =(75%×1.675)+(25%×2.675) =1.925


题目2: 在伪相联中,假设在直接映象位置没有发现匹配,而在另一个位置才找到数据(伪命中)时,不对这两个位置的数据进行交换。这时只需要 1 个额外的周期。
假设失效开销为 50 个时钟周期,
2KB 直接映象 Cache 的失效率为 9.8%,2 路组相联的失效率为 7.6%;
128KB 直接映象 Cache 的失效率为 1.0%,2 路组相联的失效率为 0.7%。

(1)推导出平均访存时间的公式。
(2)利用(1)中得到的公式,对于 2KBCache 和 128KBCache,计算伪相联的平均访 存时间


解:

平均访存时间 = 命中时间+不命中率×不命中开销

命中时间 1 路+(失效率 1 路-失效率 2 路)×1 +失效率 2 路×失效开销 1 路

平均访存时间2Kb
=1+(0.098-0.076)*1+(0.076 *50 ) =4.822

平均访存时间 128Kb
=1+(0.010-0.007)*1+(0.007 *50 ) =1.353


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值