首页 Cache高速缓存

Cache高速缓存

举报
开通vip

Cache高速缓存Cache   由于CPU工作的速度比RAM(动态内存)读写速度快,CPU从RAM读取数据时需要花费时间等待RAM进行读写,严重地降低了系统的效率。人们为了提高CPU读写程序和数据的速度,在RAM和CPU之间增加了Cache(高速缓冲存储器,简称高速缓存是静态内存)。在Cache中保存着RAM内容的部分副本,CPU在读写数据时,首先访问Cache,如果Cache中有欲读取的数据,就从Cache中读取数据。只有当Cache中没有所需数据时,CPU才去访问RAM。由于Cache的读写速度更快,因此CPU能迅速地完成数据...

Cache高速缓存
Cache   由于CPU工作的速度比RAM(动态内存)读写速度快,CPU从RAM读取数据时需要花费时间等待RAM进行读写,严重地降低了系统的效率。人们为了提高CPU读写程序和数据的速度,在RAM和CPU之间增加了Cache(高速缓冲存储器,简称高速缓存是静态内存)。在Cache中保存着RAM内容的部分副本,CPU在读写数据时,首先访问Cache,如果Cache中有欲读取的数据,就从Cache中读取数据。只有当Cache中没有所需数据时,CPU才去访问RAM。由于Cache的读写速度更快,因此CPU能迅速地完成数据的读写,进而提高计算机整体的工作速度。   CPU在Cache中找到所需信息的百分比称为Cache存储器的命中率。命中率是Cache的一个重要指标,命中率越高。表明CPU在Cache中找到所需信息的次数就越多,程序执行的速度就越快。影响命中率的因素很多,如Cache装满时进行内容替换的方式、Cache的大小及结构等。为了提高命中率,我们总希望在Cache中保存的是CPU经常要用或即将使用的那些数据。为了做到这一点,则必须按一定的算法,根据需要更换Cache的内容。通常采用“最近最少使用置换法”(LRU算法)。这种算法的特点是,当未命中时,淘汰Cache中那些最近以来最少使用的单元的内容,写入最新的内容。 L1 Cache(一级缓存)是CPU第一层高速缓存。内置的L1高速缓存的容量和结构对CPU的性能影响较大,不过高速缓冲存储器均由静态RAM组成,结构较复杂,在CPU管芯面积不能太大的情况下,L1级高速缓存的容量不可能做得太大。一般L1缓存的容量通常在32—256KB,Pentium II/III的32 KB L1 Cache.  AMD Athlon采用0.25微米的制程生产,它的L1 Cache为128KB     L2 Cache(二级缓存)是CPU的第二层高速缓存,分内部和外部两种芯片。内部的芯片二级缓存运行速度与主频相同,而外部的二级缓存则只有主频的一半。L2高速缓存容量也会影响CPU的性能,现在家庭用CPU容量最大的是512KB,而服务器和工作站上用CPU的L2高速缓存更高达1MB-3MB。 Cache初次出现   Cache并不是生来就有的,其实在286时代,计算机还没有Cache,这是因为当时的CPU速度不快,内存的速度完全可以满足系统的需求。直至386时代,当CPU的速度不断进步,内存的速度却没有得到有效的提升,因此,内存便成为了系统传输的瓶颈,这样就算CPU频率再上升,效能也不会增加。于是Cache便由此诞生了,早期的解决方案是在主板上加入32至64KB的Cache,Cache的速度比主存储器快,作为CPU和内存的缓冲区域。这样使得系统性能迅速提高。   其实Intel在386时也曾考虑过将Cache改进CPU内,但由于技术原因,(书P22)CPU的成品率十分低,故此80386最后也没加上Cache。 新的发展——处理器内置   由于CPU的速度不断进步,而外置Cache受系统总线的影响已经不能完全满足CPU发展的 要求 对教师党员的评价套管和固井爆破片与爆破装置仓库管理基本要求三甲医院都需要复审吗 ,到486时代,Intel终于把Cache放进CPU核心内。80486内置了8KB Cache,由于处于CPU内,令传输速度更有效率,但由于On Die Cache的容量太少,故此当时还是有On Board Cache,称为L2 Cache。而CPU内的Cache称为L1 Cache。当时的L2 Cache就像今天内存一样,是可以插在主板上使用的,不过价格昂贵。 Cache的演进   进入了Pentium时代,CPU芯片商不断去增加Cache的容量去加强效能,当Pentium有16KB时,对手就加入更多,到达32KB甚至64KB,当时AMD的K6-2更有高达84KB的L1 Cache,由于L1 Cache的容量再高,效能也不会太显注,战场开始漫延至L2 Cache。赛扬刚诞生的时候由于没有集成L2 Cache导致性能极低,因此Intel不得不在随后的赛扬处理器中重新加入L2 Cache。可见L2 Cache的对于CPU(L2 Cache集成到CPU后)整体性能至关重要。 整合L2 Cache 到了Intel Pentium Pro,Intel终于把L2 Cache放在CPU内,L2速度也加快了,不过却不是造在核心内,那时Pentium Pro内采用双芯片,L1 + Die及L2,但由于要把两颗芯片封装,时常会压坏芯片,因此成品率不高。那么如何解决这个问题?Intel是很有办法的。Intel后来采用了On-Card Cache。Pentium II改用了Slot 1,把L2 Cache放在卡内而不用封装。虽然效能不俗却十分仰贵,所以Intel推出了没有L2 Cache的Celeron版本。同时期的AMD也采用了和Intel同样的办法使用Slot A 。 真正L2 On-Die Cache   由于制程的进步,L2 Cache也可以放在核心内,初时的Pentium III拥有512KB L2 Cache,早期的也产生过slot I结构的Pentium III,在卡内出现512k Cache,但和早期的socket 370结构的Pentium III一样Cache只有核心速度的一半,到后来进步至256KB 但行全速。此时期的代表做就是大家了解的铜矿核心Pentium III。 L2 Cache 的发展   由于L2 Cache 具有重要的作用,在Pentium III时代,Intel Pentium III采用了8路联合相关的L2 Cache而赛扬却只有4路。这个差异存在的原因是因为Intel本质上是通过放弃PentiumIII上1/2的Cache来得到新处理器,这样的放弃不但放弃了损坏的缓存存储单元,也放弃了相应四路相关控制电路,直接后果就是导致命中率下降。而相对的AMD的做法却用备份单元来填补,对L2 Cache控制电路没有任何影响。可以肯定的是16路相关一定比8路相关缓存命中率高出很多,更不要说4路了。虽然在缓存本身的控制电路以及制作方式上,AMD都通过自身过去在K6上获得的经验超越了Intel,但还是有稍许的美中不足。Duron的L2 Cache并不象新的Pentium III和赛扬那样采用256位的缓存数据总线,而依然是64位。加上Intel特地优化的缓存总线设计,这就意味着在数据传送能力上新Pentium III和赛扬会比Duron强出不少。但AMD新设计的L2 Cache有些区别,L1 Cache的数据并不会写入L2 Cache。L2 Cache仅仅包含回写缓存块,也就是需要被写回到主存系统的数据。而Pentium III和Celeron的L2 Cache都属于经典意义上的包含类型缓存,也就是说L1 Cache(32KB)的内容一定也在L2 Cache(256KB和128KB)内。 此外L2 Cache 在容量上也有发展,在Pentium IV 早期的版本Willamette核心的处理器仍然使用的是256k Cache,但在图拉丁 Pentium III和Northwood的Pentium IV Intel 率新把 L2 chache 增加到512k 随后AMD 也在其Barton核心的athlon 中增加为512k。 而新的64位处理器L2 Cache 容量陡增至 1M。Prescott是Intel下一代的Pentium 4处理器可能也会使用1MB L2 Cache,而Itanium 2代号为McKinley,Deerfield是Intel即将推出的64位工作站CPU,Deerfield是一个低成本版本的Madison,Madison增加了芯片内高速缓存的数量,Madison和Deerfield会在明年的第二季度推出,分别具有6MB和4MB的Cache。 最新的发展——L3 Cache诞生   随着64位处理器的诞生,Intel已经把 高速的L3 加入到其Itanium 2当中,或许这有将带来一场Cache革命,但结局如何?这正是我们期待的。 操作BIOS设置 优化CPU性能   在高级BIOS设置中,主要有“CPU Internal Cache”、“External Cache”、“CPU L2 Cache ECC Checking”等几个与CPU性能有关的选项。 (1)CPU Internal Cache(CPU内部缓存):建议设置为“Enabled”。 它设置了CPU内部高速缓存开关,该选项在某些主板的BIOS设置中,也叫做“L1 Cache”、“Level 1 Cache”或“Primary Cache”。设置为打开可以提高CPU性能。 (2)External Cache(外部缓存):建议设置为“Enabled”。 “External Cache”也就是“L2 Cache”。同样设置为“Enabled”,才能使CPU的性能得到发挥。 (3)CPU L2 Cache ECC Checking(CPU 2级缓存ECC检查):建议设置为“Disabled”。  如果该功能设置为打开,可以提高数据传输时的准确性,不过会使整个系统的处理速度降低,所以建议设置为关闭。 “ECC”是“Error Checking and Correcting”的缩写,也就是“错误检查与校正”。其作用是在数据传输时进行检验核对,如果发现错误可以进行数据校正。
本文档为【Cache高速缓存】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_393827
暂无简介~
格式:doc
大小:32KB
软件:Word
页数:5
分类:互联网
上传时间:2013-01-29
浏览量:26