NVMe的优势

本文转自比特网

关注固态硬盘的朋友应该对于这个词汇并不陌生,特别是今年NVMe也频繁出现在各大媒体文章中,随着高端SSD市场逐渐从SATA专项PCI-E时,以前的AHCI标准已经有点跟不上SSD的性能要求的发展了,那么什么是NVMe呢?对于使用它的SSD又有什么优势呢?

在开始介绍NVMe技术之前,我们不妨回过头来看一下2011年时的SSD产品。当时市面上绝大部分的SSD产品都跟2.5英寸机械硬盘一样,有着同样的外形规格,使用同样的SATA接口,以及同样的接口标准(AHCI)。虽然当时SSD的性能和可靠度也在逐步提高,但仍然难以达到SATA 6Gbps的极限,限制SSD性能发挥的,更多与SSD内部的闪存、主控和固件有关。然而,新技术研发总是具有令人惊叹的前瞻性——2011年3月,NVMe 1.0标准正式发布。

NVMe是个啥?未来SSD主流标准早知道

  NVMe是个什么?--未来SSD主流标准早知道

  相信不少朋友都知道如果想要让SSD发挥全部的实力,需要在BIOS里面把SATA模式设置成AHCI模式。这样对于SSD来说能够获得更好的性能,但是现在最新的储存接口M.2和SARA-E接口都是采用的PCI-E通道,然后对于PCI-E接口想要发挥最高性能其实需要的是新的NVMe标准,而不是AHCI。

  什么是NVMe

  说起AHCI的话大家应该都知道,现在所用的SATA接口与AHCI标准其实是为高延时的机械硬盘而设计的,目前主流SSD依然继续使用它们,随着SSD的性能逐渐增强,这些标准已经成为限制SSD的一大瓶颈,专为机械硬盘而设计的AHCI标准并不太适合低延时的SSD。

NVMe是个啥?未来SSD主流标准早知道

  数据标准

  NVMe其实与AHCI一样都是逻辑设备接口标准。NVMe全称Non-Volatile Memory Express,非易失性存储器标准,是使用PCI-E通道的SSD一种规范,NVMe的设计之初就有充分利用到PCI-E SSD的低延时以及并行性,还有当代处理器、平台与应用的并行性。SSD的并行性可以充分被主机的硬件与软件充分利用,相比与现在的AHCI标准,NVMe标准可以带来多方面的性能提升。

  业界早就意识到这一问题,早在2009年下半年,关于NVMe的技术工作正式启动,NVMe规范由包含90多家公司在内的工作小组所定制,Intel是主要领头人,小组成员包括美光、戴尔三星、Marvell、NetAPP、EMC、IDT等公司,目的就是为SSD建立新的存储规范标准,让它在老旧的SATA与AHCI中解放出来。2011年,NVMe标准正式出炉,该标准是根据闪存存储的特点量身定制的,新的标准解除了旧标准施放在SSD上的各种限制。2012年标准升级到NVMe 1.1,最新的NVMe 1.2标准是在2014所推出的。

  首款支持NVMe标准的产品是三星XS1715,与2013年7月所发布,随后陆续有企业级的NVMe标准SSD推出,直到今年Intel 750发布,NVMe标准的产品才开始进入消费级市场。

NVMe是个啥?未来SSD主流标准早知道

  采用NVMe标准的Intel 750

  NVMe的优点一:延时更低

  说到NVMe标准对比AHCI标准的优势,其中之一就是低延时,看上图比较直观,NVMe标准是面向PCI-E SSD的,使用原生PCI-E通道与CPU直连可以免去SATA与SAS接口的外置控制器(PCH)与CPU通信所带来的延时。

      因为AHCI标准本身就是为高延迟的机械硬盘而设,虽然SSD发展至今,主流产品依然沿用了机械硬盘时代的那一套,但已经开始不能满足性能的高速发展,特别是在延迟方面。而面向PCIe SSD产品的NVMe标准,降低存储时出现的高延迟,就是其要解决的问题之一。

NVMe是个啥?未来SSD主流标准早知道

  延时更低

     造成硬盘存储时延迟的三大因素,存储介质本身、控制器,以及软件接口标准。由上图可以发现,比起AHCI,NVMe可以大幅度降低控制器和软件接口部分的延迟,原因有以下两个:

  NVMe面向的是PCIe SSD,原生PCIe主控与CPU直接相连,而不是传统方式,通过南桥控制器中转,再连接CPU(当然,如果设备是接入到南桥提供的PCIe接口上,那么这部分的延迟也不会降低多少);

  在软件层方面,NVMe标准的延时只有AHCI的一半不到,NVMe精简了调用方式,执行命令时不需要读取寄存器;而AHCI每条命令则需要读取4次寄存器,一共会消耗8000次CPU循环,从而造成大概2.5微秒的延迟。

     但我们从图中也可以看出,即使NVMe有效降低了控制器与软件接口之间的延迟,存储介质本身仍然是造成延迟的最主要原因。撇开延迟有点突破天际的机械硬盘不说,现在SSD使用的NAND闪存本身也会造成约50μs的延迟(不同NAND的延迟差别也比较大,仅以图中例子说明)。要解决存储介质造成的较高延迟,还需要依赖于未来可能应用的诸如PCM、RRAM、MRAM等新式存储器。

  NVMe的优点二:IOPS大增

  另外NVMe也大大的提升了SSD的IOPS性能,在制定AHCI规范时并行性的想法并没有完全融合到规范内,利用NCQ功能可以对传输能力进行优化,但是接口并不允许SSD真正最大限度地发挥其应有的并行性。

NVMe是个啥?未来SSD主流标准早知道

  IOPS大增

      如果我们有详细了解过SSD的主控参数,应该知道会有队列深度这个参数。理论上,IOPS=队列深度/ IO延迟,故IOPS的性能,与队列深度有较大的关系(但IOPS并不与队列深度成正比,因为实际应用中,随着队列深度的增大,IO延迟也会提高)。市面上性能不错的SATA接口SSD,在队列深度上都可以达到32,然而这也是AHCI所能做到的极限。但目前高端的企业级PCIe SSD,其队列深度可能要达到128,甚至是256才能够发挥出最高的IOPS性能。而NVMe标准下,最大的队列深度可达64000。此外,NVMe的队列数量也从AHCI的1,提高了64000。

  所以现在SSD测试通常最多只会测试到队列深度为32的IOPS能力,其实终究原因这是AHCI的上限,其实许多闪存主控可以提供更好的队列深度。而NVMe则可以把最大队列深度从32提升到64000,SSD的IOPS能力也会得到大幅提升。

  NVMe还支持同一时间从多核处理器接受命令和优先处理请求,这个特性在企业级的重负载时优势就会显露出来。

(图表数据来自Tom's Hardware)队列深度基本要达到128以上,才能发挥最高性能

  低延时和良好的并行性的优势就是可以让SSD的随机性能得到大幅度提升,在任何队列深度下都能发挥出极佳的速度。

  NVMe的优点三:更省电

  NVMe加入了自动功耗状态切换和动态能耗管理功能,设备从Power State 0闲置50ms后可以切换到Power State 1,继续闲置的话,在500ms后又会进入功耗更低的Power State 2,切换时虽然会有短暂延迟,但SSD在闲置时可以把功耗控制在极低的水平,在功耗管理上NVMe标准的SSD会比现在主流的AHCI SSD拥有较大优势,这一点对移动设备来说尤其重要,可以显著增加笔记本平板电脑的续航能力。另外,因为原生PCIe可以与CPU直连,数据传输时没有了中间转接过程所产生的功耗,也会在一定程度上降低能耗。

NVMe是个啥?未来SSD主流标准早知道

  能耗低

  NVMe的优点四:驱动适用性广

  驱动程序的兼容性也是所有PCI-E SSD的一个共有问题,每个产品都有对应不同系统的专用驱动,这方面有些厂商做的非常出色,而另一些则 不怎么样,然而许多PCI-E SSD需要加载驱动才能够正常引导。

NVMe是个啥?未来SSD主流标准早知道

  驱动适用性广

  NVMe标准的出现解决了这个问题,NVMe SSD可以很方便的匹配不同的平台、系统,无需厂家提供相应的驱动就可以正常工作,目前Windows、Linux、Solaris、UnixVMware、UEFI等都加入了对NVMe SSD的支持。

      NVMe接口标准能否迅速普及?

目前普通民用级PC完全用不到这么高的性能,即使真让我们使用了,当前的应用体验也不会让我们有那种当初从机械硬盘跨入固态硬盘时代的“快感”。

支持NVMe的SSD的售价在未来的一段时间内,仍然达不到普通民用可以接受的水平。企业级的Intel P3600 800GB 官方指导价为1569美元,P3700 800GB更是高达2414美元。三星的SM951 M.2 SSD勉强也算是民用级支持NVMe的SSD,但是面向OEM领域,主要用于高端超极本之中,虽然万能的X宝也有卖,不过256GB版本的价格也达到了1799元。


下代CPU直接提供的PCIe 3.0通道数仍为16条

  平台方面,目前主流消费级CPU,提供的PCIe 3.0通道数为16条,下一代的Skylake-S同样维持在这个数目。把NVMe SSD接入到与CPU直连的接口中,会抢占显卡的PCIe通道(如果你有安装显卡的话),从而一定程度上降低显卡性能;但如果接入的是南桥提供的接口,延迟和传输带宽也可能会受到影响,也不能完全发挥出NVMe SSD的性能优势。

  因此,综上所述,在两年内,NVMe依然很难在主流领域普及开来。但是在SATA 6Gbps和AHCI已经逐渐成为存储设备发展瓶颈的今天,各种走PCIe通道的SSD,以及NVMe标准将会是接下来存储产品的发展趋势。

      Intel 9系主板就已经加入了可走PCIe通道的M.2接口,100系主板还会有对同是走PCIe通道的SATA Express的原生支持。值得一提的是,100系的中高端芯片组还将支持到PCIe 3.0,通道数量也会有较大提高(9系为8条,100系中Z170为20条,H170为16条),带宽和扩展能力都能达到极大的提升,这无疑也是Intel 为PCIe SSD的普及而铺路。

skylake

                            下代芯片组的扩展能力将会大大提升,PCIe SSD也将走入主流
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值