微星在前段時(shí)間放出消息,,用戶通過更新旗下X99,、Z97、H97系列主板BIOS到最新版本,,即可獲得對(duì)NVMe的支持,。官方表示,,相比目前主流的AHCI,,通過新的NVMe標(biāo)準(zhǔn)接入的SSD,,可以獲得大幅度的性能提升。但是對(duì)于大多數(shù)用戶來說,,NVMe接口標(biāo)準(zhǔn)可能并不熟悉,,即使有所耳聞,,可能也覺得只是在高端專業(yè)領(lǐng)域應(yīng)用得多,,與一般民用無緣。但隨著SSD性能的提升,,SATA接口和AHCI已經(jīng)逐漸成為存儲(chǔ)的瓶頸所在,,PCIe和NVMe的組合取代前者只是時(shí)間問題。下面筆者就為大家簡(jiǎn)單解析一下NVMe的特性,,以及相較于AHCI究竟有哪些優(yōu)勢(shì),。
AHCI就要過時(shí)了,?新接口標(biāo)準(zhǔn)NVMe淺析
在開始介紹NVMe技術(shù)之前,,我們不妨回過頭來看一下2011年時(shí)的SSD產(chǎn)品。當(dāng)時(shí)市面上絕大部分的SSD產(chǎn)品都跟2.5英寸機(jī)械硬盤一樣,,有著同樣的外形規(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 開發(fā)者論壇上已被提出,,并在同年由Intel 領(lǐng)銜成立了NVMHCI工作組,。該工作組的成員還包括了美光、戴爾,、三星,、Marvell、NetAPP,、EMC,、IDT等公司,而他們的目標(biāo),,就是要將未來存儲(chǔ)產(chǎn)品的性能,,從SATA和AHCI之中解放出來。下面我們就來談一下NVMe的優(yōu)勢(shì)所在,。
低延遲
因?yàn)锳HCI標(biāo)準(zhǔn)本身就是為高延遲的機(jī)械硬盤而設(shè),,雖然SSD發(fā)展至今,主流產(chǎn)品依然沿用了機(jī)械硬盤時(shí)代的那一套,,但已經(jīng)開始不能滿足性能的高速發(fā)展,,特別是在延遲方面。而面向PCIe SSD產(chǎn)品的NVMe標(biāo)準(zhǔn),,降低存儲(chǔ)時(shí)出現(xiàn)的高延遲,,就是其要解決的問題之一。
NVMe PCIe SSD可有效降低延遲
造成硬盤存儲(chǔ)時(shí)延遲的三大因素,,存儲(chǔ)介質(zhì)本身,、控制器,以及軟件接口標(biāo)準(zhǔn),。由上圖可以發(fā)現(xiàn),,比起AHCI,NVMe可以大幅度降低控制器和軟件接口部分的延遲,原因有以下兩個(gè):
NVMe面向的是PCIe SSD,,原生PCIe主控與CPU直接相連,,而不是傳統(tǒng)方式,通過南橋控制器中轉(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ì)本身仍然是造成延遲的最主要原因。撇開延遲有點(diǎn)突破天際的機(jī)械硬盤不說,,現(xiàn)在SSD使用的NAND閃存本身也會(huì)造成約50μs的延遲(不同NAND的延遲差別也比較大,,僅以圖中例子說明)。要解決存儲(chǔ)介質(zhì)造成的較高延遲,,還需要依賴于未來可能應(yīng)用的諸如PCM,、RRAM、MRAM等新式存儲(chǔ)器,。
IOPS性能提升
隊(duì)列深度的大幅提升
另外,,NVMe的另一個(gè)重點(diǎn)則是提高SSD的IOPS(每秒讀寫次數(shù))性能。如果我們有詳細(xì)了解過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,。
(圖表數(shù)據(jù)來自Tom‘s Hardware)隊(duì)列深度基本要達(dá)到128以上,,才能發(fā)揮最高性能
驅(qū)動(dòng)適用性廣
主流操作系統(tǒng)已經(jīng)逐漸開始支持NVMe
NVMe標(biāo)準(zhǔn)的也解決了不同PCIe SSD之間的驅(qū)動(dòng)適用性問題,。此前的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相連,沒有了中間轉(zhuǎn)接過程所產(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)普及開來呢?筆者個(gè)人認(rèn)為這個(gè)答案是否定的,,微星加入對(duì)NVMe支持具有更多的象征性意義,。
首先,,也是最重要的一點(diǎn),目前普通民用級(jí)PC完全用不到這么高的性能,,即使真讓我們使用了,,當(dāng)前的應(yīng)用體驗(yàn)也不會(huì)讓我們有那種當(dāng)初從機(jī)械硬盤跨入固態(tài)硬盤時(shí)代的“快感”。
Intel DC P3700 800GB SSD售價(jià)2414美元
支持NVMe的SSD的售價(jià)在未來的一段時(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)域,主要用于高端超極本之中,,雖然萬能的X寶也有賣,,不過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)域普及開來,。但是在SATA 6Gbps和AHCI已經(jīng)逐漸成為存儲(chǔ)設(shè)備發(fā)展瓶頸的今天,各種走PCIe通道的SSD,,以及NVMe標(biāo)準(zhǔn)將會(huì)是接下來存儲(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á)到極大的提升,,這無疑也是Intel 為PCIe SSD的普及而鋪路,。
下代芯片組的擴(kuò)展能力將會(huì)大大提升,,PCIe SSD也將走入主流