查字典论文网 >> 幕后英雄 隐藏在硬件背后的缓存

幕后英雄 隐藏在硬件背后的缓存

小编:

无处不在的缓存

我们都知道,缓存是用于平衡高速设备和低速设备之间速度差异的纽带,也是一种用于存储临时文件的交换区,其最大意义就是“尽可能”帮助低速设备不拖高速设备的后退。之所以是“尽可能”,是因为缓存的容量通常都很小,而且数据在缓存中的命中率也是有限的。但无论如何,缓存都是提高整体性能中不可或缺的关键一环。

以CPU内集成的L2、L3等小容量高速缓存为例(图1),它们就是CPU与内存之间的纽带。在数据交换的过程中,由于CPU的运算速率远超内存,因此CPU在更多的时间中都是在等待数据到来,或是把数据写入内存。而缓存会提前预读CPU即将访问的数据,当CPU需要读取数据时会绕过内存直接从缓存中调用,从而提高读取效率。

HDD的缓存情结

继CPU缓存之后,HDD机械硬盘的缓存也是声名在外。限于物理结构的制约,就速度一项HDD和内存相比简直堪比“垃圾”,如果没有缓存用于作为硬盘和内存之间数据交换的纽带简直就是“作死”,因此如今的HDD大都会配备64MB容量的缓存芯片(图2)。

受SSD固态硬盘的步步紧逼,机械硬盘领域还逐渐衍生出了新的品类:SSHD(混合硬盘)。与HDD相比,SSHD内除了传统的硬盘控制芯片和缓存芯片以外,还会额外加入NAND闪存芯片(多为8GB)和SSD主控芯片(图3~4)。其实,我们可以将新加入的两颗芯片理解为SSHD的特殊缓存模块,它们会将用户频繁使用的各种应用、数据预存到NAND中缓存,这个缓存具备学习和记忆功能,它预存的数据不会因为关机而消失,从而给用户带来PC越用越快的感觉。

SSD和缓存的暧昧关系

SSD固态硬盘的速度远远超过HDD,为何此类高速存储设备内也会内置缓存芯片呢? 如果将这颗芯片取消会不会影响性能呢?这个问题的答案源于SSD所采用的主控芯片与存储介质。

简单来说,由于SSD的工作机制与HDD不同,其特有的FTL机制让操作系统只能对LBA(逻辑地址)进行操作而不能干涉到PBA(物理地址)的操作。因此,SSD需要一个可以动态转换LBA与PBA层的对应关系的FTL表。SSD容量越大,FTL表也就越大。而SSD内置的DRAM外部缓存芯片就可以用于保存FTL表,从而节省系统访问FTL表的时间提高读写效率。

另一方面,像三星840这类采用TLC闪存的SSD(图5),它所内置的高达512MB的DRAM外部缓存芯片并非提升系统性能,而是起到了延长TLC闪存耐久度的功效。此外,通过主控的特殊算法,还能将缓存用于4K小文件,从而明显提高4K性能。

问题来了,既然都说SSD离不开缓存,那为什么以东芝旗下Q系列SSD为代表的固态硬盘产品,会取消看似重要的缓存芯片呢(图6)?原来,这个秘密就源于东芝Q系列SSD所选用的主控芯片。

SSD主控可弥补缓存作用

就性能而言,东芝Q系列SSD与同价位带缓存的SSD相比也是不遑多让(图7),失去了缓存芯片的帮忙并没有出现想象中的性能和寿命衰减。在M.2成为新一代主板和笔记本的标准接口后,不需要缓存的SSD主控将有更为广泛的发展前景,相同容量但尺寸更小的SSD可以帮助PC们进一步瘦身。

缓存成集显“激素”

笔记本用户肯定都发现了一个有趣的现象,CPU集成显卡在配备双内存时的性能更好,内存频率越高,集显性能也就越强。实际上,对CPU集显而言,系统会将一部分内存空间虚拟成集显的“缓存”(也可称为显存),缓存规格越高(如双内存时就是双通道),性能自然也就越强了。

而英特尔旗下的Iris/Iris Pro(锐炬)系列核芯显卡之所以可以获得媲美GT640M级别独立显卡的性能,答案就源于在CPU上加入了一颗128MB容量的eDRAM嵌入式缓存(图8),代号“Crystalwell”。我们可以将Crystalwell视为内存体系中的“四级缓存”,任何从三级缓存中被赶出来的数据都会到这里边来,其双向带宽可达50GB/s,从而彻底解决了集成显卡面临内存带宽不足的问题。

小 结

总之,缓存是PC领域各种硬件的重要组成部分,只是在技术的发展过程中面临着更多可能。比如在CPU中新出现的eDRAM缓存可以进一步改善集显性能,但需要面临更高的功耗和成本压力;在SSD硬盘领域中,缓存可以被新主控与固件算法取代,从而帮助厂商设计更为迷你的SSD产品。

热点推荐

上一篇:谁是未来趋势?游戏本的轻薄化 PK 外置显卡

下一篇:如何对幼儿进行德育教育论文 幼儿园关于德育教育之类的论文