Caching 根据以下数据计算平均内存访问时间?
考虑以下信息Caching 根据以下数据计算平均内存访问时间?,caching,operating-system,paging,tlb,Caching,Operating System,Paging,Tlb,考虑以下信息 假设缓存是物理寻址的 TLB命中率为95%,访问时间=1个周期 缓存命中率为90%,再次访问时间=1个周期 页面错误为1%,在TLB和缓存中都发生未命中时发生 TLB访问和缓存访问是顺序的 主存储器访问时间为5个周期 磁盘访问时间为100个周期 页表始终保存在主内存中 根据以下信息,平均内存访问时间是多少 我的方法=>我给出了我如何理解这个问题的方法。请检查一下 平均内存访问时间 ==> ==> 0.99(TLB命中(TLB访问时间+缓存命中+缓存未命中)+TLB未命中(TLB
- 假设缓存是物理寻址的
- TLB命中率为95%,访问时间=1个周期
- 缓存命中率为90%,再次访问时间=1个周期
- 页面错误为1%,在TLB和缓存中都发生未命中时发生
- TLB访问和缓存访问是顺序的
- 主存储器访问时间为5个周期
- 磁盘访问时间为100个周期
- 页表始终保存在主内存中
PS:我下周要进行期中考试,需要练习这些问题在你的情况下,棘手的问题是缓存是物理寻址的这意味着在开始之前,我们必须进行翻译(因为程序使用虚拟地址) 我建立下面的概率树来计算平均值。我们将从叶子中减去它来计算整个平均值。规则非常简单:我们计算分支成本并将其乘以概率,就像您在计算中所做的那样。我得到的值是2.7225 树 第一次请假减少,页面错误 减量后 缓存命中场景的成本 注意:无论如何,我们为缓存访问支付1个周期的费用 上次减价前 注:我们为TLB支付1个周期的费用
老兄,你在忙着工作吗?你的数字是0.99和0.01吗?@Ivan,1%是页面错误。因此,我使用99%表示无页面错误。@Willturner如果出现页面错误,为什么不在缓存尝试时间中包含1个周期?@Ivan,它只是1个周期。即使我加上它,结果也不会有太大的改变。事实上,我的教授告诉我答案是3个周期,但我得到了大约4个周期,这就是为什么我认为我犯了一些错误。你能回答这个问题吗?是的,你的答案是正确的。只是一个疑问,为什么在第一棵树中有两种类型的页面错误。在这个问题中,如果TLB和缓存都未命中,则会发生PF?@willturner是的,这是一个错误。如果我们在TLB中有页面,这意味着我们在主存中有页面,这意味着在读取时没有页面错误,谢谢你纠正了这一点。现在平均时间增大0.01:)敬礼。很好的解释。谢谢,现在一切都好了!!我将在所有此类问题上使用此方法,甚至在考试中:)
Probability of NO page fault (Memory access time)
+
Probability of page fault (Page fault service time)
1 + 0.95*1.5 + 0.05*5.95 = 1 + 1.425 + 0.2975 = 2.7225