在介紹NVMe 1.4之前,我們先來了解一些小知識:
NVMe的版本號:
NVMe從1.0規范發展至今,新版本的規范主要目標是增加功能選項。另外低版本號的NVMe設備有時也會支持后來被納入高版本規范中的可選功能。譬如NVMe 1.2標準的東芝RC100,就能夠支持后來稱為NVMe 1.3規范一部分的Host Memory Buffer功能,利用共享主機內存空間提升自身隨機存取性能。
NVMe與PCIe的關系:
我們日常見到的NVMe固態硬盤都是使用PCIe通道進行傳輸的,但PCIe并不是NVMe的唯一選項,事實上光纖甚至是銅制網線都可以作為NVMe傳輸的底層承載者。東芝的KumoScale技術就是通過網絡傳輸的增強NVMe存儲解決方案。
NVMe 1.4新特性:首選寫入對齊與粒度
NVMe 1.4為固態硬盤提供了一種新能力,它可以向上層操作系統與驅動程序報告首選寫入對齊與寫入粒度信息。雖然固態硬盤的4K對齊已經廣為人知,但大家或許還不知道,當前閃存的一個物理Page大小通常是16KB、一個閃存block的容量更是高達十幾兆字節。
過小的寫入粒度需要固態硬盤進行先讀取、再修改、后寫入的重復工作,固態硬盤主動報告適合自己的寫入粒度和寫入對齊指標,有助于軟件進行針對性優化,提升性能和效率、降低閃存磨損提升使用壽命。
持久存儲區域:
企業級NVMe固態硬盤自帶有大容量的DRAM緩存,并且處于斷電保護設計之下。PMR(Persistent Memory Region)空間提供了一種內存級讀寫速度、斷電后數據不會丟失的存儲區域。
東芝的CM5企業級固態硬盤已經支持這一特性。
耐久性分組:
隨著3D QLC閃存的問世,固態硬盤的容量不斷擴增。但與此同時,TLC閃存能夠提供更高的擦寫壽命。耐久性分區提供了一種根據存儲介質進行分組的管理方式,借助這一功能,軟件可以針對性的進行優化,例如將存檔類數據寫入到容量更大的QLC分組、寫入和改動較多的數據定位到TLC或者MLC分組。
可預測的延遲模式
IO Determinism能夠利用多組NVMe固態硬盤交替進行有計劃的閃存維護(如垃圾回收、磨損均衡作業),從而大幅降低閃存垃圾回收等維護作業對隨機讀取延遲的影響。
早在2017年東芝就已經在FMS閃存峰會上演示了這一技術的巨大潛力:經由IO Determinism優化后的閃存存儲陣列能夠實現高達100倍的性能提升。
NVMe 1.4的改進主要突出在公開更多的固態硬盤內部信息給上層操作系統,以便獲得更加有針對性的軟件優化。這些特性除了需要固態硬盤的支持,更需要操作系統以及軟件層面的優化,所以有些會僅限于特殊的行業應用。對于普通個人消費者來說,東芝RC100中支持的Host Memory Buffer才是立竿見影的性能提升利器,而它的使用門檻也非常低:只要安裝Windows 10操作系統即可獲得支援。