论文部分内容阅读
PC系统中的存储设备一直以来都是以温彻斯特结构的硬盘作为主力,这种结构的硬盘被称为机械硬盘。所谓机械,是因为其硬盘的磁头需要机械部件才能在盘片上顺利寻找到所需要的数据。机械硬盘读取延迟比较高,尤其是读取零散存放在硬盘各个位置的小文件时性能尤为糟糕。人们采用了各种各样的技术来优化硬盘工作状态。目前,机械硬盘所使用的优化方法称为AHCl,也就是Serial ATA Advanced Host Controller Interface串行ATA高级主控接口的缩写。AHCI是在英特尔主导下,联合多家业内厂商参与研发针对机械硬盘的优化标准,其中包含了诸如NC0这样专门缩减寻道时间的优化方式。综合来看,AHCI相比之前的ATA标准,能够提升硬盘综合性能大约10%~30%,并被厂商和用户广泛接受。
不过,即使AHCI这样的技术存在,受制于机械硬盘的原理限制,存储系统带宽和内存带宽之间的差距,依旧不可避免地随着时间推移越来越大。目前主流的电脑都在使用双通道DDR3内存。以DDR3-1600为例,双通道DDR3 1600可以达到25.6GB/s的速度。相比之下,机械硬盘的速度最高也难以超过200MB/s,差距大约有100倍。因此为了减小这样的差距,人们将目光转向了闪存芯片,这类芯片速度非常快,并且存储密度也比较高。尤其是随着工艺和技术进步,闪存芯片的价格也越来越低。于是,市面上出现了大量使用闪存芯片的存储设备——也就是被称作SSD固态硬盘的产品逐渐开始成为PC的重要存储设备。SSD和机械硬盘从原理上就完全不同,前者采用电信号存储设备,使用的存储介质是硅芯片,后者采用磁信号存储设备,存储介质是磁盘。这样一来,专门面向机械硬盘设计的AHCl优化技术就不太适合使用在SSD设备上了。于是,在2007年,英特尔就已召集了业内相关厂商,包括三星、美光、戴尔、Marvell、EMC等,成立了NVMHCl小组,准备着手在即将到来的SSD时代建立新的存储规范标准。那么,这个新规范究竟是什么?
这个新规范就是最终在2011年出炉的Non-Volatile Memory Express非易失性存储器标准即NVMe标准——专门针对NAND闪存和下一代存储设备所提出的规范。它基于闪存存储设备的的特点而研发,其目的是尽可能缩小存储系统带宽和内存带宽之间的差距。该规范出台后,就迅速得到了企业级产品的应用,而在消费级产品上则要晚不少,直到今年才有极少的新产品采用了该规范。目前它的最新标准是NVMe 1.2,公布于2014年11月3日。
在PC的存储系统中,延迟总是来源于设备、控制器和软件。对机械硬盘来说,设备延迟占大头(机械硬盘高达1000微秒以上),如此长的设备延迟甚至可以掩盖控制器和软件的延迟。但是在NVMe面对的SSD方面,本身设备延迟大幅度降低(约50微秒左右,主要由NAND闪存介质造成),因此对软件和控制器的延迟控制就变得比较重要,整个协议需要大幅度改进。比如NVMe取消7AHCl命令执行时对寄存器的读取访问,相比之下AHCl需要4次读取、消耗8000个CPU循环并带来大约2.5微秒的延迟。此外,由于NVMe标准主要面向采用PCI-E总线设计的SSD,存储设备可以直接被CPU调用,不再需要南桥转接,同样能够降低延迟,提高效率。NVMe还可以减少命令的尺寸以及I/O操作的数量,使得带宽和CPU开销能得到一定程度的节约。
总的来看,受益于延迟的降低,存储设备将会得到更快速的响应,整个用户体验都会由于延迟降低而变得更好。NVMe未来的希望是借助PCM、RRAM、MRAM等新式闪存存储器,将整个延迟降低至20微秒以内,而不是现在的100微秒左右。
相对于SATA、PCI-E M.2等传统产品,NVMe在带宽上所受的限制要小很多,支持PCI-E 3.0 x4的NVMe控制器最多可以提供双向8GB/s,单向4GB/s的带宽,存储设备不会再受限于接口速度了。同时,NVMe标准的另一个重点在于提升存储系统的IOPS每秒读写次数。IOPS的提升来自于NVMe对命令队列支持能力的改进,AHCI支持存储系统一次最多执行1个队列,每个队列32条指令。NVMe标准则大幅度提升了这个数据,理论上存储系统一次最多可执行64K(64000个)队列,并且允许每个队列拥有64K的命令。AHCl支持如此少队列的原因是因为机械硬盘寻道时间非常漫长,多了也没用。但是在SSD上,由于寻道时间大幅度降低,因此可以同时执行大量的操作。在支持队列增加后,存储系统多任务的读写性能将得到明显的提升。此外,NVMe将对多核心处理器进行更好的优化,新加入的中断模式支持可以让多个处理器核心同时向NVMe控制器发出命令,这对企业级用户来说是极为有用的功能。
NVMe的另外一个优点在于功耗控制更为出色。首先,NVMe由于不需要更多的转接功能,可以直接和CPU通讯,节省了中间步骤,带来了能耗比的提高。其次,NVMe增加了自动功耗状态控制系统,这将带来能耗的显著降低。举例来说,设备启用时,维持在0等级的能耗,此时功耗大约4W左右,进入和退出延迟都在10微秒,速度非常快。接下来,当设备闲置50微秒后,系统就会自动进入能耗等级1,这个时候功耗大约会降低至10mW,与此相应的是进入和退出设备所需要的延迟增加,分别是大约10毫秒和5毫秒。当设备继续闲置50毫秒时,设备还可以进入能耗等级3,这个时候总功耗就会低于1 mW,进入和退出的延迟会继续拉长至15毫秒和30毫秒。拥有这样的功耗控制后,NVMe的能耗比会有比较明显的提升,尤其是对于笔记本电脑、平板电脑等移动设备来说,能带来电池续航时间的延长。
正是得益于NVMe如此多的优势,因此存储厂商早已在企业级产品上投入了使用。在2013年三星就推出了2.5英寸NVMe固态硬盘XS1715系列,英特尔则在2014年发布了DC P3700、DCP3600、DC P3500等多款NVMe企业级PCI-E固态硬盘。而随着时间来到2015年,首款消费级NVMe固态硬盘也终于与大家见面,这就是英特尔的750 PCI-E 3.0 1.2TB SSD。 英特尔750是一款采用PCI-E 3.0 x4接口的SSD,其双向带宽可达8GB/s,不过目前在售的所有英特尔主板的PCH芯片组都只支持PCI-E 2.0标准,因此它在Z97、Z87、B85等主流主板上必须直连CPU才能发挥出最大的性能,这也就意味着用户得牺牲部分显卡带宽与性能,来换取存储性能上的提升(即便支持PCI-E 3.0标准的英特尔100系列芯片组主板上市,我们也仍建议将PCI-E SSD与CPU直连,以便降低延迟,提升存储性能)。当然,对于Haswell-E处理器的用户来说则不存在这个问题,毕竟除了最低端的Core i7 5820K,其他HaswelI-E处理器拥有40条PCI-E 3.0通道,用户可以非常灵活地配置显卡与存储设备。
此外,由于NVMe存储设备还是一种新事物,因此要在消-费级硬件上正常使用英特尔750 PCI-E 3.0 1.2TB SSD,对硬件与软件还有一定的要求。目前,绝大部分主板只支持IDE、AHCl、RAID三种存储设备的工作模式。要想让主板支持NVMe工作模式,厂商就必须对主板BlOS进行升级,然而英特尔宣称不保证8系列芯片组以及以前产品的兼容性。这里的主要问题是主板厂商可能不愿意修改老芯片组的BlOS,因为加入NVMe以及引导系统的功能,BlOS需要做出较大的调整。所以对于想采用NVMe存储设备的用户来说,需留意所用主板BlOS里有无增加NVMe标准的更新。
而从我们的体验来看,在更新BlOS支持NVMe标准的主板上,它并不会像AHCl那样也增加一个NVMeT作模式,而是可以直接正确识别出NVMe SSD。软件端,目前Windows 8.1以及Windows 10已内置了微软的NVMe驱动,而在Windows 7、Windows Server 2012等操作系统上则需要用户安装英特尔的NVMe驱动才能在系统中识别出英特尔750 SSD。从体验来看,我们建议不论你使用的是Windows 10还是Windows 7操作系统,都最好再安装英特尔NVMe驱动,因为SSD使用微软自带NVMe驱动所发挥出的性能大幅低于使用英特尔驱动时的状态,连续读取速度甚至不到英特尔驱动的一半。
英特尔750 PCI-E 3.0 1.2TB SSD的尺寸不大,采用的是半高挡板。1.2TB的版本采用了单PCB设计,上面焊接了大量的闪存芯片。PCB正面的所有18颗闪存芯片、3颗缓存芯片都贴上了导热贴,上方都覆盖有铝制的散热片。不过有所不足的是,PCB背面的14颗闪存芯片及2颗缓存芯片则完全裸露在外,没有任何保护措施。而SSD主控芯片则单独使用了一块铝制散热片。功耗方面,1.2TB的版本平均写入功耗为22W,平均读取功耗为10W,待机功耗只有4W。
拆开散热片后可以看到主控芯片,英特尔750的主控芯片是英特尔自家生产的型号为“CH29AE41AB0”的产品,这颗芯片拥有多达18个读写通道,远远高于在普通固态硬盘上使用的8通道主控芯片。该主控也曾使用在P系列产品上,但英特尔没有给出这颗芯片的太多相关资料,无法得知它的具体参数和设计情况。SSD的闪存颗粒方面则采用了20nm工艺制造的英特尔MLC颗粒,此外,这款SSD的缓存容量高达1.25GB,采用的是DDR31600颗粒,型号为美光D9PQL。
我们如何测试
既然在技术上拥有这么多优势,那么采用NVMe技术的英特尔750 PCI-E 3.0 1.2TB SSD到底表现怎样,接下来我们将使用基于AHCl标准设计的固态硬盘产品与其进行对比测试,对比产品包括金士顿HyperX Predator PCI-E SSD,代表当前的高性能PCI-E 2.0 x4单PCB SSD,以及三星840 PRO SSD,代表当前的高性能2.5英寸高端SATA SSD。测试软件方面,我们将首先使用AS SSD、Anvil’sStorage Utility等软件测试它们的基准性能,再通过实际应用体验、PC Mark 8测试NVMe SSD在实际使用中与AHCl SSD有何不同。最后,考虑到NVMe标准大幅提升了lOPS执行次数,因此我们还会采用IOMeter与Performance Test,测试三类固态硬盘在文件服务器、WEB服务器、数据库服务器、工作站专业应用中的表现。
从表1、表2测试结果来看,英特尔750 PCI-E 3.0 1.2TB SSD的表现显然相当漂亮,总评成绩比两款对比产品要高很多,总评成绩是第二名PCI-E 2.0 x4高性能SSD的1.08~1.54倍。其优势主要体现在以下方面:
1.得益于PCI-E x4 3.0的超高带宽,以及18通道主控芯片,它的连续读写速度比对比产品快很多,特别是连续读取速度已经突破2000MB/s。而两款对比产品由于分别只使用了PCI-E 2.0 x4与SATA接口,因此在连续读写速度上,英特尔750SSD具备很大的优势;
2.随机4KB高队列深度读写性能优势很大,在AS SSD随机4KB 0D64读写测试中,英特尔750 SSD的读写速度双双突破了1000MB/s,根源在于NVMe标准大幅提升了存储系统一次最多可执行命令的数量,相应地令lOPS每秒读写次数获得质的飞跃,其lOPS性能是PCI-E 2.0 x4SSD的1.4~1.9倍;
3.从AS SSD读写存取延迟的测试结果可以看到,NVMe产品的延迟的确得到了明显的降低,英特尔750 SSD只有对比AHCI产品的30%左右,这也进一步提升了其性能表现;
虽然有这么多优势,但从基准测试中,我们也发现了NVMe性能提升非常有限的一个地方,那就是其低队列深度下的随机读取性能提升不高。如在Anvil’s Storage Utility中,它的单队列深度随机4KB读取速度仅比SATA产品领先约3M B/s,在随机4KB QD4读取性能测试中,它的领先幅度也只有最大20%。当然究竟表现如何,还是得通过实际应用测试来体现。 实际应用全面测试
文件读写测试
文件复制、拷贝是人们在使用PC时最常见的一类应用。在这个测试中三类存储设备将分别向由20GB内存组成的RAMDlSK虚拟硬盘中读写16.6GB影音文件、7588.4MB小文件,我们将记录它们的传输速度与传输时间(表3)。
在这个应用测试中,英特尔750 NVMe PCI-E SSD的高带宽、多通道设计优势被全面发挥出来。表3显示,它的传输速度远超对比产品,仅需7.61 s就可完成16.6GB影音文件的读取,只有PCI-E2.0 x4 SSD所用时间的56%,SATA SSD的22.8%。同时由于其访问延迟较AHCl产品大幅降低,因此在小文件的读写性能上,它也拥有着巨大的优势,所用时间只有后者的约59%。所以在文件传输上,NVMePCI-E SSD的确带来了当年从机械硬盘到固态硬盘那样质的飞跃。
不过要想享受到英特尔750 NVMePCI-E SSD的读写性能传输优势也需要用户为它搭配同样高性能的SSD或RAMDlSK。
接下来,我们通过游戏启动、软件安装、病毒扫描,压缩文件与解压缩等众多应用对三款固态硬盘进行了体验。(表4)
相对基准测试与文件读写测试,在软件应用操作上,三款固态硬盘的差距就要小不少——采用NVMe标准的英特尔750 PCI-E SSD仍在大部分测试中领先,但优势并不大。如表4所示,从游戏启动来看,虽然它在四款游戏中的启动时间最短,但其启动时间最多只缩短了0.6s,在其中三款游戏中的时间则仅缩短了0.1s~0.3s。原因在于游戏启动速度依赖的是固态硬盘的低队列深度随机读取性能。而从前面的基准测试来看,在这个环境下的测试,英特尔750 PCI-E SSD与对比产品的差异很小,因此在实际应用中自然也不会发生大的变化。
而在软件应用中的情况则要复杂一些,像在进行软件安装、文件压缩、解压缩这些应用时,需要对固态硬盘同时进行读写操作,因此既需要依赖固态硬盘的低队列深度随机读取性能,也需要借助固态硬盘的低队列深度随机写入性能。而从结果来看,在程序安装、压缩等应用中,采用NVMe标准的英特尔750 PCI-E SSD拥有一定的优势,在Adobe PhotoShop CS6中,其安装时间较PCI-E 2.0 x4 SSD缩短了13s,在对《孤岛危机3》安装文件的压缩中,其所用时间则少了16s,相对高端SATA固态硬盘更有近半分钟的缩短。
但稍显遗憾的是,在一些应用中可能是软件或驱动优化问题,英特尔750PCI-E SSD的表现反而不敌传统AHCl架构的PCI-E 2.0 x4 SSD,在文件解压时间、操作系统启动以及病毒扫描上所用时间均高于后者。鉴于时间有限,为了验证三类SSD在更多应用下的表现,接下来我们还特别运行了整合众多应用软件操作的PCMark 8存储测试。
与AS SSD基准测试软件不同,PCMark 8是一款整合众多消费级软件,通过模拟实际应用来进行测试的评测软件,因此对消费级存储系统的性能表现更具指导作用。(表5)
从表5可以看到,PCmark的测试结果与SSD在实际应用中的表现非常相近,英特尔750 PCI-E SSD尽管在所有测试中胜出,但相对于PCI-E 2.0x4 SSD的优势很小,执行同样任务的时间最大只缩短了不到2s。而在我们以前进行的机械硬盘与固态硬盘对比测试时,PCMark 8中相同任务的执行时间则有近200s的巨大差异。我们认为造成变化不大的主要原因还是在于在消费级软件中,执行存储任务的速度主要依赖的还是固态硬盘的低队列深度随机读写性能,而在这一指标上,采用NVMe标准的英特尔750 PCI-E SSD优势并不大,特别是其随机4KB读取性能。同时,我们认为也有可能这些软件本身并未对NVMe PCI-ESSD这类高速存储系统进行更好的优化,因此在实际的消费级应用中,英特尔750PCI-E SSD不会为用户带来质的飞跃。
在高队列深度应用测试中,我们将分别采用IOMeter-SPerformance Test,测试三类固态硬盘在文件服务器、WEB服务器、数据库服务器、工作站环境中的性能表现。(表6、7、8)
结果与AS SSD基准测试中的随机4KB高队列深度成绩如出一辙。从表6、表7来看,除了着重测试单队列深度的Performance Test工作站传输性能外,英特尔750 PCI-E SSD在其他测试中与对手拉开了很大差距。原因在于在服务器应用上,存储系统要面对众多来自不同设备、用户的访问请求。控制器向存储设备发出的指令,不再是像消费级软件那样一条条发送,而是一批批地发送,固态硬盘将批量执行这些请求。只要存储设备运行能力够强,在执行这些批量指令时,处理一条指令和同时处理多条指令消耗的时间不会有明显变化。而NVMe标准一次最多可执行64K(64000个)队列命令的特性,使得英特尔750 PCI-E SSD在面对QD 64、QD128这些批量指令时,一个周期就能执行完这些指令的访问请求,再加上8GB/s的接口带宽令它可以达成恐怖的传输速度。而AHCI架构的固态硬盘由于—次只能执行1个队列,且1队指令数只能有32个,因此即便控制器在一个周期发送64条、128条如此多的批量命令,它们也只有将这些批量命令拆分为32 32或32 32 32 32,其结果就是AHCI固态硬盘在QD 32、QD 64、QD 128下的性能差异不大。
为了说明这个现象,为此我们还特别进一步测试了三类固态硬盘在不同队列深度下,数据库服务器环境应用中的lOPS与传输性能。而从表8来看,支持NVMe规范的英特尔750 PCI-E SSD从0D32到0D128队列深度。其lOPS与传输性能均有很大的提升,它的传输速度提升了近400MB/s,lOPS性能增加了多达5万次。而两款AHCl架构的固态硬盘则没有明显变化,其中PCI-E 2.0 x4高性能SSD从QD 32到QD 128只提升了约10MB/s的传输速度,IOPS性能仅增加了约300次。而2.5英寸高端SATA SSD则只有不到3MB/s的速度提升,IOPS性能也只增加了约300次左右。
虽然首款NVMe消费级固态硬盘最后所表现出的主要优势仍在服务器端,但从技术层面上来看,它无疑是未来发展的方向——PCI-E 3.0 x4带宽、18通道主控设计、更低的访问延迟、更高的批量指令执行能力,以及对多核心处理器的优化,每一个技术特点都是当今其他消费级固态硬盘产品所竭力追求的技术方向。我们认为NVMe技术标准势必将替代AHCl全面导入到固态硬盘行业,而固态硬盘也将很可能由此掀起从SATA到PCI-E的转换,为存储设备的下—次提速打下基础。
最后从产品端来看,对普通用户来说,当然大可不必选择英特尔750 PCI-ESSD,在大部分消费级应用中,它暂时无法带来很大的提升;而对企业级用户来说,虽然它的高队列深度性能不错,但何不选择性能、稳定性更强的DC系列产品。因此英特尔750 PCI-E SSD更适合那些对性能、分数非常看重硬件发烧友,毕竟它不仅是消费级中性能极为强劲的产品,也是一个跑分利器。更值得一提的是,这款英特尔750 PCI-E SSD 1.2TB的定价较为合理,其售价在1100美元左右(折合人民币约6800元),以不是非常高的代价就可兼得速度与容量,何乐而不为?
不过,即使AHCI这样的技术存在,受制于机械硬盘的原理限制,存储系统带宽和内存带宽之间的差距,依旧不可避免地随着时间推移越来越大。目前主流的电脑都在使用双通道DDR3内存。以DDR3-1600为例,双通道DDR3 1600可以达到25.6GB/s的速度。相比之下,机械硬盘的速度最高也难以超过200MB/s,差距大约有100倍。因此为了减小这样的差距,人们将目光转向了闪存芯片,这类芯片速度非常快,并且存储密度也比较高。尤其是随着工艺和技术进步,闪存芯片的价格也越来越低。于是,市面上出现了大量使用闪存芯片的存储设备——也就是被称作SSD固态硬盘的产品逐渐开始成为PC的重要存储设备。SSD和机械硬盘从原理上就完全不同,前者采用电信号存储设备,使用的存储介质是硅芯片,后者采用磁信号存储设备,存储介质是磁盘。这样一来,专门面向机械硬盘设计的AHCl优化技术就不太适合使用在SSD设备上了。于是,在2007年,英特尔就已召集了业内相关厂商,包括三星、美光、戴尔、Marvell、EMC等,成立了NVMHCl小组,准备着手在即将到来的SSD时代建立新的存储规范标准。那么,这个新规范究竟是什么?
这个新规范就是最终在2011年出炉的Non-Volatile Memory Express非易失性存储器标准即NVMe标准——专门针对NAND闪存和下一代存储设备所提出的规范。它基于闪存存储设备的的特点而研发,其目的是尽可能缩小存储系统带宽和内存带宽之间的差距。该规范出台后,就迅速得到了企业级产品的应用,而在消费级产品上则要晚不少,直到今年才有极少的新产品采用了该规范。目前它的最新标准是NVMe 1.2,公布于2014年11月3日。
在PC的存储系统中,延迟总是来源于设备、控制器和软件。对机械硬盘来说,设备延迟占大头(机械硬盘高达1000微秒以上),如此长的设备延迟甚至可以掩盖控制器和软件的延迟。但是在NVMe面对的SSD方面,本身设备延迟大幅度降低(约50微秒左右,主要由NAND闪存介质造成),因此对软件和控制器的延迟控制就变得比较重要,整个协议需要大幅度改进。比如NVMe取消7AHCl命令执行时对寄存器的读取访问,相比之下AHCl需要4次读取、消耗8000个CPU循环并带来大约2.5微秒的延迟。此外,由于NVMe标准主要面向采用PCI-E总线设计的SSD,存储设备可以直接被CPU调用,不再需要南桥转接,同样能够降低延迟,提高效率。NVMe还可以减少命令的尺寸以及I/O操作的数量,使得带宽和CPU开销能得到一定程度的节约。
总的来看,受益于延迟的降低,存储设备将会得到更快速的响应,整个用户体验都会由于延迟降低而变得更好。NVMe未来的希望是借助PCM、RRAM、MRAM等新式闪存存储器,将整个延迟降低至20微秒以内,而不是现在的100微秒左右。
相对于SATA、PCI-E M.2等传统产品,NVMe在带宽上所受的限制要小很多,支持PCI-E 3.0 x4的NVMe控制器最多可以提供双向8GB/s,单向4GB/s的带宽,存储设备不会再受限于接口速度了。同时,NVMe标准的另一个重点在于提升存储系统的IOPS每秒读写次数。IOPS的提升来自于NVMe对命令队列支持能力的改进,AHCI支持存储系统一次最多执行1个队列,每个队列32条指令。NVMe标准则大幅度提升了这个数据,理论上存储系统一次最多可执行64K(64000个)队列,并且允许每个队列拥有64K的命令。AHCl支持如此少队列的原因是因为机械硬盘寻道时间非常漫长,多了也没用。但是在SSD上,由于寻道时间大幅度降低,因此可以同时执行大量的操作。在支持队列增加后,存储系统多任务的读写性能将得到明显的提升。此外,NVMe将对多核心处理器进行更好的优化,新加入的中断模式支持可以让多个处理器核心同时向NVMe控制器发出命令,这对企业级用户来说是极为有用的功能。
NVMe的另外一个优点在于功耗控制更为出色。首先,NVMe由于不需要更多的转接功能,可以直接和CPU通讯,节省了中间步骤,带来了能耗比的提高。其次,NVMe增加了自动功耗状态控制系统,这将带来能耗的显著降低。举例来说,设备启用时,维持在0等级的能耗,此时功耗大约4W左右,进入和退出延迟都在10微秒,速度非常快。接下来,当设备闲置50微秒后,系统就会自动进入能耗等级1,这个时候功耗大约会降低至10mW,与此相应的是进入和退出设备所需要的延迟增加,分别是大约10毫秒和5毫秒。当设备继续闲置50毫秒时,设备还可以进入能耗等级3,这个时候总功耗就会低于1 mW,进入和退出的延迟会继续拉长至15毫秒和30毫秒。拥有这样的功耗控制后,NVMe的能耗比会有比较明显的提升,尤其是对于笔记本电脑、平板电脑等移动设备来说,能带来电池续航时间的延长。
正是得益于NVMe如此多的优势,因此存储厂商早已在企业级产品上投入了使用。在2013年三星就推出了2.5英寸NVMe固态硬盘XS1715系列,英特尔则在2014年发布了DC P3700、DCP3600、DC P3500等多款NVMe企业级PCI-E固态硬盘。而随着时间来到2015年,首款消费级NVMe固态硬盘也终于与大家见面,这就是英特尔的750 PCI-E 3.0 1.2TB SSD。 英特尔750是一款采用PCI-E 3.0 x4接口的SSD,其双向带宽可达8GB/s,不过目前在售的所有英特尔主板的PCH芯片组都只支持PCI-E 2.0标准,因此它在Z97、Z87、B85等主流主板上必须直连CPU才能发挥出最大的性能,这也就意味着用户得牺牲部分显卡带宽与性能,来换取存储性能上的提升(即便支持PCI-E 3.0标准的英特尔100系列芯片组主板上市,我们也仍建议将PCI-E SSD与CPU直连,以便降低延迟,提升存储性能)。当然,对于Haswell-E处理器的用户来说则不存在这个问题,毕竟除了最低端的Core i7 5820K,其他HaswelI-E处理器拥有40条PCI-E 3.0通道,用户可以非常灵活地配置显卡与存储设备。
此外,由于NVMe存储设备还是一种新事物,因此要在消-费级硬件上正常使用英特尔750 PCI-E 3.0 1.2TB SSD,对硬件与软件还有一定的要求。目前,绝大部分主板只支持IDE、AHCl、RAID三种存储设备的工作模式。要想让主板支持NVMe工作模式,厂商就必须对主板BlOS进行升级,然而英特尔宣称不保证8系列芯片组以及以前产品的兼容性。这里的主要问题是主板厂商可能不愿意修改老芯片组的BlOS,因为加入NVMe以及引导系统的功能,BlOS需要做出较大的调整。所以对于想采用NVMe存储设备的用户来说,需留意所用主板BlOS里有无增加NVMe标准的更新。
而从我们的体验来看,在更新BlOS支持NVMe标准的主板上,它并不会像AHCl那样也增加一个NVMeT作模式,而是可以直接正确识别出NVMe SSD。软件端,目前Windows 8.1以及Windows 10已内置了微软的NVMe驱动,而在Windows 7、Windows Server 2012等操作系统上则需要用户安装英特尔的NVMe驱动才能在系统中识别出英特尔750 SSD。从体验来看,我们建议不论你使用的是Windows 10还是Windows 7操作系统,都最好再安装英特尔NVMe驱动,因为SSD使用微软自带NVMe驱动所发挥出的性能大幅低于使用英特尔驱动时的状态,连续读取速度甚至不到英特尔驱动的一半。
英特尔750 PCI-E 3.0 1.2TB SSD的尺寸不大,采用的是半高挡板。1.2TB的版本采用了单PCB设计,上面焊接了大量的闪存芯片。PCB正面的所有18颗闪存芯片、3颗缓存芯片都贴上了导热贴,上方都覆盖有铝制的散热片。不过有所不足的是,PCB背面的14颗闪存芯片及2颗缓存芯片则完全裸露在外,没有任何保护措施。而SSD主控芯片则单独使用了一块铝制散热片。功耗方面,1.2TB的版本平均写入功耗为22W,平均读取功耗为10W,待机功耗只有4W。
拆开散热片后可以看到主控芯片,英特尔750的主控芯片是英特尔自家生产的型号为“CH29AE41AB0”的产品,这颗芯片拥有多达18个读写通道,远远高于在普通固态硬盘上使用的8通道主控芯片。该主控也曾使用在P系列产品上,但英特尔没有给出这颗芯片的太多相关资料,无法得知它的具体参数和设计情况。SSD的闪存颗粒方面则采用了20nm工艺制造的英特尔MLC颗粒,此外,这款SSD的缓存容量高达1.25GB,采用的是DDR31600颗粒,型号为美光D9PQL。
我们如何测试
既然在技术上拥有这么多优势,那么采用NVMe技术的英特尔750 PCI-E 3.0 1.2TB SSD到底表现怎样,接下来我们将使用基于AHCl标准设计的固态硬盘产品与其进行对比测试,对比产品包括金士顿HyperX Predator PCI-E SSD,代表当前的高性能PCI-E 2.0 x4单PCB SSD,以及三星840 PRO SSD,代表当前的高性能2.5英寸高端SATA SSD。测试软件方面,我们将首先使用AS SSD、Anvil’sStorage Utility等软件测试它们的基准性能,再通过实际应用体验、PC Mark 8测试NVMe SSD在实际使用中与AHCl SSD有何不同。最后,考虑到NVMe标准大幅提升了lOPS执行次数,因此我们还会采用IOMeter与Performance Test,测试三类固态硬盘在文件服务器、WEB服务器、数据库服务器、工作站专业应用中的表现。
从表1、表2测试结果来看,英特尔750 PCI-E 3.0 1.2TB SSD的表现显然相当漂亮,总评成绩比两款对比产品要高很多,总评成绩是第二名PCI-E 2.0 x4高性能SSD的1.08~1.54倍。其优势主要体现在以下方面:
1.得益于PCI-E x4 3.0的超高带宽,以及18通道主控芯片,它的连续读写速度比对比产品快很多,特别是连续读取速度已经突破2000MB/s。而两款对比产品由于分别只使用了PCI-E 2.0 x4与SATA接口,因此在连续读写速度上,英特尔750SSD具备很大的优势;
2.随机4KB高队列深度读写性能优势很大,在AS SSD随机4KB 0D64读写测试中,英特尔750 SSD的读写速度双双突破了1000MB/s,根源在于NVMe标准大幅提升了存储系统一次最多可执行命令的数量,相应地令lOPS每秒读写次数获得质的飞跃,其lOPS性能是PCI-E 2.0 x4SSD的1.4~1.9倍;
3.从AS SSD读写存取延迟的测试结果可以看到,NVMe产品的延迟的确得到了明显的降低,英特尔750 SSD只有对比AHCI产品的30%左右,这也进一步提升了其性能表现;
虽然有这么多优势,但从基准测试中,我们也发现了NVMe性能提升非常有限的一个地方,那就是其低队列深度下的随机读取性能提升不高。如在Anvil’s Storage Utility中,它的单队列深度随机4KB读取速度仅比SATA产品领先约3M B/s,在随机4KB QD4读取性能测试中,它的领先幅度也只有最大20%。当然究竟表现如何,还是得通过实际应用测试来体现。 实际应用全面测试
文件读写测试
文件复制、拷贝是人们在使用PC时最常见的一类应用。在这个测试中三类存储设备将分别向由20GB内存组成的RAMDlSK虚拟硬盘中读写16.6GB影音文件、7588.4MB小文件,我们将记录它们的传输速度与传输时间(表3)。
在这个应用测试中,英特尔750 NVMe PCI-E SSD的高带宽、多通道设计优势被全面发挥出来。表3显示,它的传输速度远超对比产品,仅需7.61 s就可完成16.6GB影音文件的读取,只有PCI-E2.0 x4 SSD所用时间的56%,SATA SSD的22.8%。同时由于其访问延迟较AHCl产品大幅降低,因此在小文件的读写性能上,它也拥有着巨大的优势,所用时间只有后者的约59%。所以在文件传输上,NVMePCI-E SSD的确带来了当年从机械硬盘到固态硬盘那样质的飞跃。
不过要想享受到英特尔750 NVMePCI-E SSD的读写性能传输优势也需要用户为它搭配同样高性能的SSD或RAMDlSK。
接下来,我们通过游戏启动、软件安装、病毒扫描,压缩文件与解压缩等众多应用对三款固态硬盘进行了体验。(表4)
相对基准测试与文件读写测试,在软件应用操作上,三款固态硬盘的差距就要小不少——采用NVMe标准的英特尔750 PCI-E SSD仍在大部分测试中领先,但优势并不大。如表4所示,从游戏启动来看,虽然它在四款游戏中的启动时间最短,但其启动时间最多只缩短了0.6s,在其中三款游戏中的时间则仅缩短了0.1s~0.3s。原因在于游戏启动速度依赖的是固态硬盘的低队列深度随机读取性能。而从前面的基准测试来看,在这个环境下的测试,英特尔750 PCI-E SSD与对比产品的差异很小,因此在实际应用中自然也不会发生大的变化。
而在软件应用中的情况则要复杂一些,像在进行软件安装、文件压缩、解压缩这些应用时,需要对固态硬盘同时进行读写操作,因此既需要依赖固态硬盘的低队列深度随机读取性能,也需要借助固态硬盘的低队列深度随机写入性能。而从结果来看,在程序安装、压缩等应用中,采用NVMe标准的英特尔750 PCI-E SSD拥有一定的优势,在Adobe PhotoShop CS6中,其安装时间较PCI-E 2.0 x4 SSD缩短了13s,在对《孤岛危机3》安装文件的压缩中,其所用时间则少了16s,相对高端SATA固态硬盘更有近半分钟的缩短。
但稍显遗憾的是,在一些应用中可能是软件或驱动优化问题,英特尔750PCI-E SSD的表现反而不敌传统AHCl架构的PCI-E 2.0 x4 SSD,在文件解压时间、操作系统启动以及病毒扫描上所用时间均高于后者。鉴于时间有限,为了验证三类SSD在更多应用下的表现,接下来我们还特别运行了整合众多应用软件操作的PCMark 8存储测试。
与AS SSD基准测试软件不同,PCMark 8是一款整合众多消费级软件,通过模拟实际应用来进行测试的评测软件,因此对消费级存储系统的性能表现更具指导作用。(表5)
从表5可以看到,PCmark的测试结果与SSD在实际应用中的表现非常相近,英特尔750 PCI-E SSD尽管在所有测试中胜出,但相对于PCI-E 2.0x4 SSD的优势很小,执行同样任务的时间最大只缩短了不到2s。而在我们以前进行的机械硬盘与固态硬盘对比测试时,PCMark 8中相同任务的执行时间则有近200s的巨大差异。我们认为造成变化不大的主要原因还是在于在消费级软件中,执行存储任务的速度主要依赖的还是固态硬盘的低队列深度随机读写性能,而在这一指标上,采用NVMe标准的英特尔750 PCI-E SSD优势并不大,特别是其随机4KB读取性能。同时,我们认为也有可能这些软件本身并未对NVMe PCI-ESSD这类高速存储系统进行更好的优化,因此在实际的消费级应用中,英特尔750PCI-E SSD不会为用户带来质的飞跃。
在高队列深度应用测试中,我们将分别采用IOMeter-SPerformance Test,测试三类固态硬盘在文件服务器、WEB服务器、数据库服务器、工作站环境中的性能表现。(表6、7、8)
结果与AS SSD基准测试中的随机4KB高队列深度成绩如出一辙。从表6、表7来看,除了着重测试单队列深度的Performance Test工作站传输性能外,英特尔750 PCI-E SSD在其他测试中与对手拉开了很大差距。原因在于在服务器应用上,存储系统要面对众多来自不同设备、用户的访问请求。控制器向存储设备发出的指令,不再是像消费级软件那样一条条发送,而是一批批地发送,固态硬盘将批量执行这些请求。只要存储设备运行能力够强,在执行这些批量指令时,处理一条指令和同时处理多条指令消耗的时间不会有明显变化。而NVMe标准一次最多可执行64K(64000个)队列命令的特性,使得英特尔750 PCI-E SSD在面对QD 64、QD128这些批量指令时,一个周期就能执行完这些指令的访问请求,再加上8GB/s的接口带宽令它可以达成恐怖的传输速度。而AHCI架构的固态硬盘由于—次只能执行1个队列,且1队指令数只能有32个,因此即便控制器在一个周期发送64条、128条如此多的批量命令,它们也只有将这些批量命令拆分为32 32或32 32 32 32,其结果就是AHCI固态硬盘在QD 32、QD 64、QD 128下的性能差异不大。
为了说明这个现象,为此我们还特别进一步测试了三类固态硬盘在不同队列深度下,数据库服务器环境应用中的lOPS与传输性能。而从表8来看,支持NVMe规范的英特尔750 PCI-E SSD从0D32到0D128队列深度。其lOPS与传输性能均有很大的提升,它的传输速度提升了近400MB/s,lOPS性能增加了多达5万次。而两款AHCl架构的固态硬盘则没有明显变化,其中PCI-E 2.0 x4高性能SSD从QD 32到QD 128只提升了约10MB/s的传输速度,IOPS性能仅增加了约300次。而2.5英寸高端SATA SSD则只有不到3MB/s的速度提升,IOPS性能也只增加了约300次左右。
虽然首款NVMe消费级固态硬盘最后所表现出的主要优势仍在服务器端,但从技术层面上来看,它无疑是未来发展的方向——PCI-E 3.0 x4带宽、18通道主控设计、更低的访问延迟、更高的批量指令执行能力,以及对多核心处理器的优化,每一个技术特点都是当今其他消费级固态硬盘产品所竭力追求的技术方向。我们认为NVMe技术标准势必将替代AHCl全面导入到固态硬盘行业,而固态硬盘也将很可能由此掀起从SATA到PCI-E的转换,为存储设备的下—次提速打下基础。
最后从产品端来看,对普通用户来说,当然大可不必选择英特尔750 PCI-ESSD,在大部分消费级应用中,它暂时无法带来很大的提升;而对企业级用户来说,虽然它的高队列深度性能不错,但何不选择性能、稳定性更强的DC系列产品。因此英特尔750 PCI-E SSD更适合那些对性能、分数非常看重硬件发烧友,毕竟它不仅是消费级中性能极为强劲的产品,也是一个跑分利器。更值得一提的是,这款英特尔750 PCI-E SSD 1.2TB的定价较为合理,其售价在1100美元左右(折合人民币约6800元),以不是非常高的代价就可兼得速度与容量,何乐而不为?