NVMe来了 笔记本用上更高速的SSD
2016-12-16曹操
曹操
我们都知道SSD拥有比HDD更快的读写速度,但SATA总线标准却拖累了SSD性能的发挥。好消息是,如今越来越多的笔记本都配备了支持PCI-E总线标准的M.2插槽,这就让更高速的SSD有了用武之地。
高速SSD标准普及进程加速
提起SSD相信大家不会陌生,这种不怕震动、不怕磕碰、由纯电子元件构成的存储设备可轻松帮笔记本实现提速、减肥(降低重量)的效果。随着小米笔记本Air13和联想小新Air 13 Pro等笔记本的出现,原本专为高端游戏本准备的PCI-E 3.0×4 NVMe SSD(M.2接口)终于被5000元内的主流价位机型所用(图1),算是正式打破了高端产品对NVMe SSD的垄断壁垒。
另一方面,英特尔第七代酷睿处理器平台Kaby Lake也已经蓄势待发,而该平台内部总线加入了对PCI-E 3.0×4的原生支持。可以预见,支持NVMe SSD将成为更多主流价位笔记本的标准功能,享受超过1500MB/s的极致读取速度。
重新认识几个专属名词
看到这里可能很多读者已经犯起了迷糊:啥叫PCI-E 3.0×4(标准名称为PCI Express Gen 3×4)?NVMe又是什么?M.2接口不是SATA总线吗?所以接下来,我们首先要做的就是认识一下这些专属名词。
M.2是接口类型
M.2是一种接口/插槽类型,它最早还用过NGFF的名字。与其同级别的,则是串口(SATA或mSATA)和并口(IDE)这些用于连接硬盘/硬盘线的插槽。或者,我们可以将M.2理解为比3.5英寸(台式机)和2.5英寸(笔记本)更小的硬盘标准。
需要注意的是,M.2接口和插槽又被细分为B Key(又称Socket2)和M Key(又称Socket3)两个模组,二者由于金手指缺口针脚数量不同而无法相互兼容(图2)。
PCI-E是总线标准
就M.2 SSD领域,PCI-E可不是台式机主板上用来安装显卡、声卡的物理插槽,而是代表着一种总线标准。与它对应的则是我们熟悉的SATA3.0总线,这两种总线标准将直接决定M.2 SSD的读写速度。
比如SATA3.0理论最高速度只有6Gbps,此类SSD实际传输速度能达到600MB/s就算顶天了。而PCI-E 3.0×4总线的带宽高达32Gbps,此类SSD实际传输速度可以轻松突破1000MB/s大关,顶级产品甚至可以达到2000MB/s以上(图3)。
NVMe为协议标准
还记得AHCI吗?想当年SATA串口硬盘刚出来时,我们总提醒大家想100%发挥新硬盘的潜力,一定要进入BIOS中将硬盘工作模式从IDE兼容模式修改为AHCI模式。而这个AHCI,就是SATA串口硬盘对应的协议标准(逻辑设备接口标准),我们也能将其视为一种SATA的优化驱动。
而NVMe(非易失存储器,Non-Volatile Memory Express)则是AHCI的进阶版,它也是一种协议标准,属于针对PCI-E总线SSD定制的一种高速协议(我们同样可将其视为驱动程序)。该协议基于闪存的特点而研发,其目的是尽可能缩小存储系统和内存带宽之间的差距。
需要注意的是,就目前而言支持NVMe协议的M.2 SSD一定采用了PCI-E 3.0×4总线标准,但采用PCI-E 3.0×4总线的M.2 SSD却并不一定支持NVMe协议!以三星SM951(OEM专供产品,淘宝可以购买)为例,这款PCI-E 3.0×4总线的SSD就存在两个批次,条码带“H”的版本仅支持AHCI协议,只有带“V”的型号才支持NVMe(图4)。所以下文涉及的NVMe SSD,默认就是特指支持NVMe协议且采用PCI-E 3.0×4总线的M.2 SSD(图5)。
NVMe协议的优缺点
NVMe之所以能为SSD带来更强悍的读写性能,主要源于其独有的三大特色。同时,现阶段NVMe SSD也存在一个不容忽视的缺点。
更低的延时
NVMe SSD可以通过PCI-E与CPU直接连接,绕过了传统存储设备需由南桥控制器中转的步骤,再加上它精简了调用方式,执行命令时不需要读取寄存器,所以拥有更低的延时。
更高的传输性能
IOPS(每秒读写次数)是用来衡量SSD性能的关键指标,而IOPS性能则与队列深度有着莫大关系。NVMe SSD将最大队列深度从32提升到64000,每一队列有64K命令,所以它的读写性能更快就在情理之中了。
更低的功耗控制
NVMe SSD支持自动功耗状态切换和动态能耗管理功能,再加上它通过原生PCI-E与CPU直连,在数据传输时没有中间转换过程所产生的功耗,所以它更省电,更适合注重续航时间的笔记本或新兴的平板二合一设备。
不容忽视的缺点
由于支持NVMe协议的M.2 SSD属于(相对)新兴的事物,所以自然存在一个历史遗留问题:兼容性。在这里我们先来谈一下它在驱动方面的兼容问题。
目前只有Windows 10集成了NVMe驱动,而早前的Windows XP、Windows Vista、Windows 7、Windows 8/8.1都没有内置NVMe驱动,这就导致笔记本在安装上述系统时可能出现找不到NVMe SSD硬盘的问题。解决思路有两种,其一是通过Win10 PE引导安装的方式,其二则是提前下载好NVMe驱动,在Windows系统安装的过程中(磁盘选择页面时)选择手动加载驱动(图6)。
问题来了,虽然Windows 10自带NVMe驱动,但这种通用驱动不仅无法100%发挥NVMe SSD的性能,反而经常出现写入速度异常、S.M.A.R.T.读取不了,或是其他影响性能等问题。因此,无论我们安装的是哪个版本的Windows,一定要下载NVMe SSD品牌提供的指定驱动(图7)。比如英特尔NVMe SSD就去英特尔官网下载,三星NVMe SSD就找三星。
此外,对那些没能提供,或是找不到官方驱动的NVMe SSD,我们则需要进入Windows的设备管理器里面,勾选SSD对应属性界面中“关闭设备上的Windows写入高速缓存缓冲区刷新”的选项(图8),从而获得相对正常的读写速度。等官方提供驱动下载后,一定要记得第一时间更新!
剪不断理还乱的兼容问题
NVMe SSD虽然暂时存在驱动缺陷,但它却不影响安装和使用,只是性能受损而已。真正困扰普通消费者的则是,NVMe SSD在硬件层面的兼容问题。而这种硬件兼容,则源于前文提到的M.2接口类型以及总线标准。
先来看看笔记本自身,它支持哪种SSD,取决于其主板上M.2插槽采用的是B Key还是M Key标准。如果是B Key(图9),那它肯定不支持采用M Key接口的SSD,因为根本插不进去。此外,厂商会根据产品定位和成本,决定让B Key插槽是否支持PCI-E 3.0×2总线,如果支持就可安装PCI-E 3.0×2的SSD。
如果主板的M.2插槽采用了M Key(图10),那它就有着“全兼容”的潜力,因为任何接口的M.2 SSD都能插入其中。以联想拯救者15(Skylake版)为代表的笔记本,其配备的M Key标准M.2插槽就能实现对任何M.2 SSD的全兼容。但是,也有些厂商取消了M Key向下兼容SATA总线SSD的能力,只能识别PCI-E总线的SSD。
再来看看M.2 SSD硬盘身上的接口。现在主流M.2 SSD身上的金手指大都采用了B&M Key设计(图11),可以插入任何一个模组的插槽中。而高端SSD(也就是本文讨论的支持NVMe协议的)则以M Key为主(图12),它们就只能插入主板上的M Key标准M.2插槽中了。其中,采用B&M Key接口的M.2 SSD是否支持PCI-E 3.0×2总线,取决于SSD自身的主控芯片。
此外,由于英特尔早期的Haswell/Broadwell(第四代/第五代酷睿平台)都没能对最新的NVMe SSD优化,所以早期笔记本即使配备了M.2标准的M Key插槽,安装NVMe SSD也没有太大的意义。所以,我们可以将NVMe SSD理解为针对Skylake(六代酷睿)或Kaby Lake(七代酷睿)定制的高端产品,它最适合和新机搭配,老机型升级就免了吧。
如果你还是觉得比较混乱,则可参考下表。
NVMe普及正当时
当你看到本期杂志时,第一批基于Kaby Lake平台设计的新款笔记本就应该小批量上市了,这些新品以及Skylake平台中的中高端游戏本,如果配备的是M Key标准的M.2插槽,那它们就100%支持NVMe SSD。
问题来了,那我们有必要一步到位给这些笔记本请回NVMe SSD作为搭档吗?
如果放在几个月之前,笔者的答案可能是不值得。因为NVMe SSD虽然理论跑分性能无敌,但在实际体验上的提升却很难直观地感受到。此外,在正规零售渠道我们只能买到三星950 PRO等产品,只是它们的价格极为昂贵(256GB版1399元),性价比非常一般。当然,我们可以通过淘宝购买从OEM流出的三星PM951、东芝XG3、建兴CX2等版本,256GB版普遍在800元左右,虽然价格实惠了但却没有靠谱的质保,对普通用户而言还是缺乏安全感。
好消息是,英特尔刚刚推出了新一代的600P系列NVMe SSD(图13),256GB版本京东售价只要899元(淘宝更是不足700元),拥有持续读1570MB/s、写540MB/s,随机读71000 IOPS、写112000 IOPS的参数,可享受5年官方质保。可以说,英特尔600P系列的NVMe SSD的价格与SATA总线的M.2 SSD持平或略高一点点,那我们为何舍快求慢呢?