(3) 多级的cache结构与命中率的关系

  前面说到cache容量与cache命中率的关系。为增加计算机系统中的cache容量,通常可以在已有的cache存储器系统之外,再增加一个容量更大的cache。此时原有cache为第一级cache(例如奔腾机微处理机芯片内的cache),新增加的cache则成为第二级的cache。这两级cache的关系中,第二级cache的容量比第一级cache的容量要大得多,在第一级cache中保存的信息也一定保存在第二级cache中(多级存储器系统中的包含性原则),但保存有比第一级cache中更多的信息。当CPU访问第一级cache出现缺失情况时,就去访问第二级cache。依次思路,也可以再增加第三级cache。若第一级、第二级cache的命中率为90%,则它们合起来之后的命中率为1-(1-90%)×(1-90%)= 99%,而不会是81%,很容易想到,谁会愿意多加一些硬件去降低系统的运行性能呢!