微星在前段時(shí)間放出消息,,用戶通過(guò)更新旗下X99,、Z97、H97系列主板BIOS到最新版本,,即可獲得對(duì)NVMe的支持,。官方表示,相比目前主流的AHCI,,通過(guò)新的NVMe標(biāo)準(zhǔn)接入的SSD,,可以獲得大幅度的性能提升,。但是對(duì)于大多數(shù)用戶來(lái)說(shuō),NVMe接口標(biāo)準(zhǔn)可能并不熟悉,,即使有所耳聞,,可能也覺(jué)得只是在高端專業(yè)領(lǐng)域應(yīng)用得多,與一般民用無(wú)緣,。但隨著SSD性能的提升,,SATA接口和AHCI已經(jīng)逐漸成為存儲(chǔ)的瓶頸所在,PCIe和NVMe的組合取代前者只是時(shí)間問(wèn)題,。下面筆者就為大家簡(jiǎn)單解析一下NVMe的特性,,以及相較于AHCI究竟有哪些優(yōu)勢(shì)。
AHCI就要過(guò)時(shí)了,?新接口標(biāo)準(zhǔn)NVMe淺析
在開(kāi)始介紹NVMe技術(shù)之前,我們不妨回過(guò)頭來(lái)看一下2011年時(shí)的SSD產(chǎn)品,。當(dāng)時(shí)市面上絕大部分的SSD產(chǎn)品都跟2.5英寸機(jī)械硬盤(pán)一樣,,有著同樣的外形規(guī)格,使用同樣的SATA接口,,以及同樣的接口標(biāo)準(zhǔn)(AHCI),。雖然當(dāng)時(shí)SSD的性能和可靠度也在逐步提高,但仍然難以達(dá)到SATA 6Gbps的極限,,限制SSD性能發(fā)揮的,,更多與SSD內(nèi)部的閃存、主控和固件有關(guān),。然而,,新技術(shù)研發(fā)總是具有令人驚嘆的前瞻性——2011年3月,NVMe 1.0標(biāo)準(zhǔn)正式發(fā)布,。
事實(shí)上,,NVMHCI(非易失性存儲(chǔ)主控制器接口)最早在2007年的Intel 開(kāi)發(fā)者論壇上已被提出,并在同年由Intel 領(lǐng)銜成立了NVMHCI工作組,。該工作組的成員還包括了美光,、戴爾、三星,、Marvell,、NetAPP、EMC,、IDT等公司,,而他們的目標(biāo),就是要將未來(lái)存儲(chǔ)產(chǎn)品的性能,從SATA和AHCI之中解放出來(lái),。下面我們就來(lái)談一下NVMe的優(yōu)勢(shì)所在,。
低延遲
因?yàn)锳HCI標(biāo)準(zhǔn)本身就是為高延遲的機(jī)械硬盤(pán)而設(shè),雖然SSD發(fā)展至今,,主流產(chǎn)品依然沿用了機(jī)械硬盤(pán)時(shí)代的那一套,,但已經(jīng)開(kāi)始不能滿足性能的高速發(fā)展,特別是在延遲方面,。而面向PCIe SSD產(chǎn)品的NVMe標(biāo)準(zhǔn),,降低存儲(chǔ)時(shí)出現(xiàn)的高延遲,就是其要解決的問(wèn)題之一,。
NVMe PCIe SSD可有效降低延遲
造成硬盤(pán)存儲(chǔ)時(shí)延遲的三大因素,,存儲(chǔ)介質(zhì)本身、控制器,,以及軟件接口標(biāo)準(zhǔn),。由上圖可以發(fā)現(xiàn),比起AHCI,,NVMe可以大幅度降低控制器和軟件接口部分的延遲,,原因有以下兩個(gè):
NVMe面向的是PCIe SSD,原生PCIe主控與CPU直接相連,,而不是傳統(tǒng)方式,,通過(guò)南橋控制器中轉(zhuǎn),再連接CPU(當(dāng)然,,如果設(shè)備是接入到南橋提供的PCIe接口上,,那么這部分的延遲也不會(huì)降低多少);
NVMe精簡(jiǎn)了調(diào)用方式,,執(zhí)行命令時(shí)不需要讀取寄存器;而AHCI每條命令則需要讀取4次寄存器,,一共會(huì)消耗8000次CPU循環(huán),,從而造成2.5μs的延遲。
但我們從圖中也可以看出,,即使NVMe有效降低了控制器與軟件接口之間的延遲,,存儲(chǔ)介質(zhì)本身仍然是造成延遲的最主要原因。撇開(kāi)延遲有點(diǎn)突破天際的機(jī)械硬盤(pán)不說(shuō),,現(xiàn)在SSD使用的NAND閃存本身也會(huì)造成約50μs的延遲(不同NAND的延遲差別也比較大,,僅以圖中例子說(shuō)明)。要解決存儲(chǔ)介質(zhì)造成的較高延遲,,還需要依賴于未來(lái)可能應(yīng)用的諸如PCM,、RRAM、MRAM等新式存儲(chǔ)器,。
IOPS性能提升
隊(duì)列深度的大幅提升
另外,,NVMe的另一個(gè)重點(diǎn)則是提高SSD的IOPS(每秒讀寫(xiě)次數(shù))性能,。如果我們有詳細(xì)了解過(guò)SSD的主控參數(shù),應(yīng)該知道會(huì)有隊(duì)列深度這個(gè)參數(shù),。理論上,,IOPS=隊(duì)列深度/ IO延遲,故IOPS的性能,,與隊(duì)列深度有較大的關(guān)系(但I(xiàn)OPS并不與隊(duì)列深度成正比,,因?yàn)閷?shí)際應(yīng)用中,隨著隊(duì)列深度的增大,,IO延遲也會(huì)提高),。市面上性能不錯(cuò)的SATA接口SSD,在隊(duì)列深度上都可以達(dá)到32,,然而這也是AHCI所能做到的極限,。但目前高端的企業(yè)級(jí)PCIe SSD,其隊(duì)列深度可能要達(dá)到128,,甚至是256才能夠發(fā)揮出最高的IOPS性能,。而NVMe標(biāo)準(zhǔn)下,最大的隊(duì)列深度可達(dá)64000,。此外,,NVMe的隊(duì)列數(shù)量也從AHCI的1,提高了64000,。
?。▓D表數(shù)據(jù)來(lái)自Tom‘s Hardware)隊(duì)列深度基本要達(dá)到128以上,才能發(fā)揮最高性能
驅(qū)動(dòng)適用性廣
主流操作系統(tǒng)已經(jīng)逐漸開(kāi)始支持NVMe
NVMe標(biāo)準(zhǔn)的也解決了不同PCIe SSD之間的驅(qū)動(dòng)適用性問(wèn)題,。此前的PCIe SSD,,均需要安裝驅(qū)動(dòng)程序后才能正常使用,而不同的廠商又各自為政,,每個(gè)廠商產(chǎn)品都有自己的驅(qū)動(dòng),,SSD也不能作為引導(dǎo)使用。但支持NVMe標(biāo)準(zhǔn)之后,,PCIe SSD就可適用于多個(gè)不同平臺(tái),,也不需要廠商獨(dú)立提供驅(qū)動(dòng)支持。目前Windows,、Linux,、Solaris、Unix,、VMware,、UEFI等都加入了對(duì)NVMe SSD的支持。(當(dāng)然,這個(gè)優(yōu)勢(shì)并不是相對(duì)AHCI而言,,而是相對(duì)于其他需要采用獨(dú)立驅(qū)動(dòng)的PCIe SSD)
低功耗
最后,,在功耗方面,因?yàn)樵鶳CIe可以直接與CPU相連,,沒(méi)有了中間轉(zhuǎn)接過(guò)程所產(chǎn)生的功耗,;另外在能耗管理上,加入了自動(dòng)功耗狀態(tài)切換和動(dòng)態(tài)能耗管理功能,,相比起主流的SATA接口SSD也擁有較大的功耗優(yōu)勢(shì),。
2NVMe接口標(biāo)準(zhǔn)能否迅速普及?
NVMe接口標(biāo)準(zhǔn)能否迅速普及,?
微星以 Intel P3700 SSD為例,,演示AHCI與NVMe性能差別
本文最初提到了微星率先在旗下9系主板中加入了NVMe的支持,但是否意味著支持NVMe的PCIe SSD就會(huì)很快在民用平臺(tái)普及開(kāi)來(lái)呢,?筆者個(gè)人認(rèn)為這個(gè)答案是否定的,,微星加入對(duì)NVMe支持具有更多的象征性意義。
首先,,也是最重要的一點(diǎn),,目前普通民用級(jí)PC完全用不到這么高的性能,即使真讓我們使用了,,當(dāng)前的應(yīng)用體驗(yàn)也不會(huì)讓我們有那種當(dāng)初從機(jī)械硬盤(pán)跨入固態(tài)硬盤(pán)時(shí)代的“快感”,。
Intel DC P3700 800GB SSD售價(jià)2414美元
支持NVMe的SSD的售價(jià)在未來(lái)的一段時(shí)間內(nèi),仍然達(dá)不到普通民用可以接受的水平,。企業(yè)級(jí)的Intel P3600 800GB 官方指導(dǎo)價(jià)為1569美元,,P3700 800GB更是高達(dá)2414美元。三星的SM951 M.2 SSD勉強(qiáng)也算是民用級(jí)支持NVMe的SSD,,但是面向OEM領(lǐng)域,,主要用于高端超極本之中,雖然萬(wàn)能的X寶也有賣,,不過(guò)256GB版本的價(jià)格也達(dá)到了1799元,。
下代CPU直接提供的PCIe 3.0通道數(shù)仍為16條
平臺(tái)方面,目前主流消費(fèi)級(jí)CPU,,提供的PCIe 3.0通道數(shù)為16條,下一代的Skylake-S同樣維持在這個(gè)數(shù)目,。把NVMe SSD接入到與CPU直連的接口中,,會(huì)搶占顯卡的PCIe通道(如果你有安裝顯卡的話),從而一定程度上降低顯卡性能,;但如果接入的是南橋提供的接口,,延遲和傳輸帶寬也可能會(huì)受到影響,也不能完全發(fā)揮出NVMe SSD的性能優(yōu)勢(shì)。
因此,,綜上所述,,在兩年內(nèi),NVMe依然很難在主流領(lǐng)域普及開(kāi)來(lái),。但是在SATA 6Gbps和AHCI已經(jīng)逐漸成為存儲(chǔ)設(shè)備發(fā)展瓶頸的今天,,各種走PCIe通道的SSD,以及NVMe標(biāo)準(zhǔn)將會(huì)是接下來(lái)存儲(chǔ)產(chǎn)品的發(fā)展趨勢(shì),。Intel 9系主板就已經(jīng)加入了可走PCIe通道的M.2接口,,100系主板還會(huì)有對(duì)同是走PCIe通道的SATA Express的原生支持。值得一提的是,,100系的中高端芯片組還將支持到PCIe 3.0,,通道數(shù)量也會(huì)有較大提高(9系為8條,100系中Z170為20條,,H170為16條),,帶寬和擴(kuò)展能力都能達(dá)到極大的提升,這無(wú)疑也是Intel 為PCIe SSD的普及而鋪路,。
下代芯片組的擴(kuò)展能力將會(huì)大大提升,,PCIe SSD也將走入主流