处理器要想显著的提升性能,不外乎四种方法:改进微处理器架构、增加处理器核心数量、提升频率和增加二级缓存。而就目前的使用环境来说,有的时候增加处理器核心数量并不能很好的带来性能提升,而架构更新一般属于整代产品更新之际才能出现。因此在需要沿用数年相同架构的处
更高的主频会更好的发挥二级缓存性能吗?
我们都知道,处理器在缓存中找到需要的数据称为“命中”,只有当缓存中没有处理器所需的数据时(此时称为未命中),处理器才会对内存进行访问。鉴于目前的处理器大都具有一级缓存和二级缓存。打个比方,比如在一颗拥有二级缓存的处理器中,处理器读取一级缓存的命中率为80%,这说明处理器在一级缓存中能够找到的所需要的数据占所需数据总量的80%,另外剩下的20%处理器将会从二级缓存中去寻找,剩下的这20%数据是不可能从二级缓存中全部找到的,也会出现“未命中”,所以我们在此假定二级缓存的“命中率”也同样为80%,找到剩余20%所需数据中的80%,那么还有总数据量的4%没有被命中,此时处理器就不得不从内存中去调用这剩下的4%。
介于从处理器内部到一级缓存、二级缓存最后到内存的所需时间会越来越慢,所以缓存的命中率和主频在理论上也会影响到缓存的性能表现,但实际使用中,纯理论的情况会出现吗?下面就让我们通过测试来检验一下。
注:在测试中,我们将所有处理器的主频一起提升到3.2G,其他设定不变。
在《Quake4》的测试中,主频共同提升到3.2G之后,512KB与1MB的性能差距从原有的23%下降到了20%。2MB与4MB的性能差距则有微弱的提升,从原有的8%提高到了9%。512KB与6MB的性能差距则没有变化,主频从2.66G提高到3.2G之后,两者的性能差距依旧保持在相同的59%上。
在《半条命2》的测试中,512KB与1MB的性能差距从原有的23%提高到了25%。2MB与4MB的性能差距则有提升,从原有的25%提高到了28%。512KB与6MB的性能差距提升相对明显,性能差距从2.66G主频下的102%提高到了3.2G下的120%,有18%的提高。
在《英雄连》的测试中,提升频率之后的512KB二级缓存和1MB二级缓存的性能差距为40%,略高于在2.66G主频下的37%。而2MB与4MB的性能差距则从原有的14%提高到了16%。512KB与6MB的性能差距从原有的123%提高到了131%,可见在《英雄连》这种对处理器非常敏感的游戏中,主频越高,越能更好的发挥出大二级缓存的优势。
通过上面的测试我们可以大致了解到,随着主频的提高,在大多数情况下,不同容量的二级缓存在性能上确实会有更大的性能差距。但是与主频的提升并不成正比,在原有的基数比例下,当主频同步提升20%的情况下,游戏中大致会出现8%左右的缓存性能增长,最高时也仅仅达到18%(《半条命2》中)。
一部分人都会有主频越高,缓存“命中”率越大的认识,因为主频的提高,自然会提高高速缓存与主缓存的存取时间,也有的读者会拿{Cache“命中”率=(平均存取时间-主存存取时间)/(高速缓存存取时间-主存存取时间)}这个公式来换算,但是这样的计算结果显然是没有任何实际意义。因为当今缓存的“命中”率中都会采取极为高效、科学的算法来提高缓存的效率。在这种学术问题上永远都会存在争议,在这个问题上我们也没有必要较真儿,作为消费者和玩家的我们只需要知道,主频的提高确实会提高缓存性能就可以了。
网友评论