摘要:
本文主要就硬件体系结构中。cache对处理器性能的影响给出定量统计的样例,而且由定量的结果怎样推导出定性的结论。
问题描写叙述:
如果某顺序运行的处理器,其平均缺失率为2%,平均每条指令要訪问存储器1.5次,cache缺失代价为100个周期。
此处将cache命中时间包括在cpu运行时间内,cpu理想的cpi为1.0。比較cache的存在与否。对于性能的影响。
问题解答:
这里的性能评估从cpu时间入手:
那么我们将相应的数据代入后:
就能够得到在存在cache的情况下的cpu时间;
那么接下来我们讨论,在不存在cache的情况下,cpu时间应该怎样表示?不存在cache。也即意味着每次訪问都是缺失,
那么1000条指令会有1500次内存訪问。相应的停顿时钟周期为1500*100。然后再除以指令数1000后,我们得到:
CPU时间(无cache) = 151*指令数*时钟周期时间
因此我们得出结论,在存在cache和不存在cache的情况下,两者的性能相差接近40倍。
定性的结论:
cache对于低cpi和高时钟频率的cpu的性能影响尤其重要;
分析:
我们看上述定性结论的前半部分。为什对于低cpi的尤其重要?我们回到上述的公式,性能之比能够表示为:
考察上述的公式,能够发现假设cpi=1.0变得更大一点的话,那么性能之比会对应地变小,这也就意味着
cache的存在对于高cpi的cpu的性能影响没有对于低cpi的cpu的性能影响大。
相同的道理,假设高时钟频率的话。那么对应的150和3会显得更大,造成性能之比变大,也就意味着性能
影响越显著;
因此,从对于上述公式的考察,我们能够得到例如以下的定性结论(由定量分析到定性结论的过程):
cache对于低cpi和高时钟频率的cpu的性能影响尤其重要;
结论和启示:
这个样例的精彩之处在于:怎样从公式或者说定量的分析。导出定性的结论。