英特尔智能高速缓存技术(Intel Advanced Smart Cache)是2006年推出的英特尔酷睿微架构中所包含的5大革新技术之一,它专为
多核心处理器设计,能够让每一个内核动态地利用高达100%的可用二级缓存资源,并同时以更高的吞吐率从高速缓存中获取数据,从而有效加强了多核心架构的执行效率,增加绝对性能和每瓦特性能。
英特尔第一代
双核心处理器设计只是单纯地把两颗核心封装在一起,并分享同一个FSB
带宽,当其中一颗核心使用FSB时,另一颗便需要等待另一颗的完成才能使用FSB,加上英特尔FSB设计是单向存取,同时还需要通过北桥来读取
系统内存资料,以上种种因素均严重加重了FSB的工作量。此外由于两颗核心没有直接沟通的桥梁,所以当两颗核心工作量不平均时,如其中一颗核心工作量过少,L2 Cache没有被有效地应用,但另一颗核心的L2 Cache却因工作量过重,L2 Cache容量没法应付而需要传取
系统内存,更关键的是它并无法直接借用另一颗核心的L2 Cache空间,只能经过FSB及北桥才能达到目的,在这一过程中便会出现严重的读取延迟,大幅度降低整个处理器的执行效率。
在意识到上文所说的问题之后,英特尔在
酷睿微架构的前身—— 移动平台的Yonah处理器中首次提出Smart Cache的概念,其最主要的特点就是通过
处理器核心内部的Shared Bus Router让两个内核共享相同的二级缓存,也就是说当CPU 1运算完毕后把结果存在二级缓存时,CPU 0便可通过Shared Bus Router读取CPU 1放在共用二级缓存上资料,大幅减低读取上的延迟并减少使用FSB
带宽,从而减轻FSB带宽的压力,此外Shared Bus Router还会为
双核心使用FSB传输进行排序,新加入的Bandwidth Adaptation机制改善了双核心共用FSB时的效率,减少不必要的延迟,提升不同内核协作的效率。
以之前Yonah处理器中的Smart Cache为基础,英特尔在2006年推出的
酷睿微架构中发布了英特尔智能高速缓存技术(Intel Advanced Smart Cache)。与之前的Smart Cache不同的是,酷睿微架构进一步加强了Prefetch(预读取)缓存的能力,每颗内核均拥有3个独立预读取机制 (两个
数据段和一个索引段) 和两个二级缓存预读取机制,从而让不同内核更加“聪明”的 运用二级缓存资源,大幅提高了二级高速缓存的命中率从而提升整体的执行效率。
此外,在英特尔智能高速缓存技术中,每个核心都可以动态支配全部二级高速缓存。当某一个
内核当前对缓存的利用较低时,另一个内核就可以动态增加占用二级缓存(
L2高速缓存)的比例。甚至当其中的一个内核关闭时,仍可以保持全部缓存在工作状态,另外也可以根据需求关闭部分缓存来降低功耗。