现代台式机的二级CPU缓存的容量大部分在64KB至2MB之间。由于CPU L2缓存容量对CPU性能有重大影响,因此低端CPU和中高端CPU之间的物理结构差异主要是L2缓存容量的大小。那么为什么二级缓存容量如此重要?它对CPU性能有什么影响?
如“关于CPU高速缓存的层次结构”中所述,第二级CPU高速缓存用作第一级高速缓存的“备份仓库”,用于为第一级高速缓存存储更多数据并减少CPU的直接访问内存。频率。从理论上讲,CPU访问并调用高速缓存的数据比例越大,CPU访问并调用内存的数据比例越小,并且由于内存访问而损失的时间越少。因此,缓存容量越大,CPU的实际效率越高,性能也越强。
事实上,英特尔和AMD处理器在一级缓存的逻辑结构设计上是不同的,因此二级缓存对CPU性能的影响也不同。由于CPU读取的数据(包括指令)的80%来自一级缓存,因此一级缓存的逻辑结构决定了CPU二级缓存容量对CPU性能的影响。英特尔奔腾4和赛扬系列处理器的主要数据缓存称为“数据代码指令跟踪(读和写)缓存”。 AMD的Athlon 64 / Athlon XP / Sempron / Duron系列处理器的主要数据缓存称为“真实数据读写缓存”。
两种类型的CPU 1级缓存的逻辑结构之间有什么区别?下面,我用一个例子来描述。

假设有一个计算任务,从“ 1”到“ 999999”。在传统的“真实数据读写缓存”架构下,该系列数据中使用的第一个数据(例如“1、2……449、450”)将存储在一个CPU级别的数据缓存中。更多数据(例如“ 451、452……899999、900000”)存储在CPU的二级缓存中,其余数据(例如“ 900001、999002……99999”)存储在CPU的二级缓存中。8、999999”)暂时存储在内存中,CPU将按照第一级数据缓存,第二级缓存和内存的顺序读取这些数据。

传统的主数据缓存存储方法
但是在“数据代码指令跟踪缓存”架构的CPU中,第一级数据缓存不存储这些首次使用的数据(“1、2……449、450”),但是这些数据存储在第二级缓存中,而第一级数据缓存仅将这些数据的开始和结束地址存储在第二级缓存中(也称为指令代码)。例如,数据“1、2……449、450”顺序存储在第二级高速缓存中,数据“ 1”的地址为“ 00001F”,数据“ 450”的地址其实是``00451F'',实际上是第一级数据缓存只需要存储两个地址``00001F''和``00451F'',而不是存储大量数据。

“数据代码指令跟踪缓存”架构的一级数据缓存的存储方法
但是,由于其一级数据缓存不存储数据,因此数据存储在二级缓存中,因此对二级缓存容量的依赖性非常大,因此CPU需要更大的二级缓存。级别的缓存容量发挥其应有的性能。在实际应用中,CPU处理的大部分数据为0KB〜128KB数据,128KB〜256KB数据约为10%,256KB〜512KB数据约为5%,512KB〜1MB数据仅约为3%。因此,对于这种CPU,辅助高速缓存容量从0KB增加到256KB将几乎线性地提高CPU的性能。增加到512KB会稍微提高CPU的性能;从512KB增加到1MB,普通用户非常难以意识到CPU性能已经提高。因此,您可以感觉到Pentium 4 C(512KB L2缓存)和Celeron(128KB L2缓存)之间的性能差异,但是很难感觉到Pentium 4 C(512KB L2缓存)和Pentium 4 E(1MB二级缓存) )性能差异。

CPU处理数据大小的概率分布图
例如,都为2.8GHz的Celeron D(256KB L2高速缓存)和Pentium 4E(1MB L2高速缓存),分别花费56秒和48秒计算超级π104万比特。 FSB的差异(前者为133MHz,后者为200MHz)和超线程技术的影响,两者之间的性能差距仅约10%。对于普通用户而言,性能差距可以忽略不计;仅对CPU计算性能要求对于“需求”播放器,必须具有更大的辅助缓存容量。

赛伦D


奔腾4 E
相对而言,由于AMD的Athlon 64 / Athlon XP / Sempron / Duron系列产品将数据直接存储在第一级数据缓存中,并且在大多数情况下128KB的容量可以承受CPU紧急需要的数据,因此第二个级别缓存对CPU性能的影响不是很大。这也解释了为什么主频率和FSB相同的Athlon XP(256KB或512KB L2高速缓存)和Duron(64KB L2高速缓存)在L2高速缓存容量上有巨大差异,但是实际性能差距并不大。此外,Athlon 64 / Sempron系列CPU在内存控制器,管线长度,频率,总线体系结构和扩展指令集等许多方面与以前的产品不同,因此,性能不受二级缓存容量的影响较小。


Sempron

速龙64
总而言之,就CPU性能而言,不仅仅是获得准确答案的二级缓存容量的比较。实际上,还必须考虑诸如高速缓存的总体设计结构和一级数据高速缓存的容量等因素。虽然通常来说,L2缓存容量越大越好,但这并不是说L2缓存容量加倍会使CPU性能提高一倍。因此,对于普通家庭用户,计算机主要用于上网,欣赏音乐和电影以及文字处理。带有256KB二级缓存的Celeron D或Sempron就足够了。只有对3D游戏,办公软件和多媒体编辑性能有更高要求的用户才需要更大的辅助缓存CPU。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shoujiruanjian/article-343898-1.html
不过再怎么作死
福建有多少导弹对着台湾你知道吗