NVDIMM_百度百科

文章推薦指數: 80 %
投票人數:10人

非易失性雙列直插式內存模塊(英語:non-volatile dual in-line memory module,縮寫NVDIMM)是一種用於計算機的隨機存取存儲器。

非易失性存儲器是即使斷電也能保留其 ... 反饋 分享 複製鏈接 請複製以下鏈接發送給好友 https://baike.baidu.hk/item/NVDIMM/7475977 複製 複製成功 NVDIMM 編輯 鎖定 非易失性雙列直插式內存模塊(英語:non-volatiledualin-linememorymodule,縮寫NVDIMM)是一種用於計算機的隨機存取存儲器。

非易失性存儲器是即使斷電也能保留其內容的內存,這包括意外斷電、系統崩潰或正常關機。

雙列直插式表示該內存使用DIMM封裝。

NVDIMM在某些情況下可以改善應用程序的性能、數據安全性和系統崩潰恢復時間。

這增強了固態硬盤(SSD)的耐用性和可靠性。

中文名 非易失性雙列直插式內存模塊 外文名 NVDIMM 磁盤緩存 減少CPU透過I/O讀寫磁盤的次數 本    質 內存條規格 集    成 DRAM+非易失性內存芯片 目錄 1 發展歷史 2 應用 ▪ 數據保護 ▪ 磁盤緩存 ▪ 存儲鏈 3 相關技術發展 NVDIMM發展歷史 編輯 NVDIMM由BBU(BatteryBackedUp)DIMM演變而來。

BBU採用含有重金屬的後備電池以維持普通揮發性內存中的內容幾小時之久,但不符合綠色能源的要求。

由超級電容作為動力源的NVDIMM應運而生。

並且NVDIMM使用非揮發性的flash存儲介質來保存數據,數據能夠保存的時間更長。

NVDIMM應用 編輯 NVDIMM數據保護 計算機系統的計算結果和服務信息皆臨時保存在內存中,這些數據在系統掉電後將丟失,甚至能引起整個系統的崩潰。

NVDIMM可以解決系統異常掉電情況下,內存數據的保存工作,並且能夠在系統恢復正常運行後,繼續之前的工作。

全系統保護 [1]  是NVDIMM的一個典型應用場景。

在系統異常掉電後,該系統能在短時間內將整個計算機系統當前的工作狀態(包括CPU,橋接芯片,網卡等硬件設備以及系統中所有的進程)保存至NVDIMM。

在系統重新上電運行後,立即恢復至之前的運行狀態,彷彿系統只是“打了個盹”。

在雲技術發展日新月異的今天,虛擬化技術作為雲的核心技術,得到了廣泛的關注與創新。

與此同時,作為雲服務運行的底層載體,虛擬機的數據安全與完整是急需解決的重要課題。

虛擬機實質為軟件模擬的具有完整硬件系統功能的、運行在一個完全隔離環境中的完整計算機系統,也就意味着虛擬機的所有運行狀態都在內存中。

NVDIMM可以利用虛擬機本身的快照功能,在系統異常情況下,迅速保護存儲在內存中的臨時快照,達到保護整個虛擬機的目的。

NVDIMM磁盤緩存 磁盤緩存是為了減少CPU透過I/O讀寫磁盤的次數,提升磁盤I/O的效率,用一部分內存來儲存訪問較頻繁的磁盤內容。

磁盤緩存的存在對於數據訪問的一致性帶來了問題,尤其是採用write-back策略的寫緩存導致異常掉電情況下內存中更新的數據未能及時寫入磁盤而丟失。

NVDIMM是寫緩存的最佳存儲介質。

它的隨機訪問性質能讓CPU和操作系統直接訪問管理,並且非易失性保證數據在異常掉電情況下得以保護。

[2]  針對RAID控制器的寫緩存NVDIMM已逐漸被接受。

對於帶有板級RAID控制芯片或者採用軟件RAID方案的計算機,缺乏寫緩存,NVDIMM可以直接用做系統主存,配合操作系統,完成寫緩存任務。

還有一類PCIE接口的RAID控制卡,它們採用普通的帶電池後備的內存條作為緩存使用,NVDIMM可以直接替代這些內存條。

NVDIMM存儲鏈 存儲鏈是將整個存儲系統中的數據按照安全度,性能要求以及使用頻率分層存儲在不同的非易失存儲介質中。

[1]  圖1storagetier 如圖1所示為一典型的存儲鏈實例。

IO性能要求較高的數據被存儲在SSD上,而要求較低的數據放入各種類型的磁盤陣列以及NAS。

NVDIMM可作為存儲鏈的最前端,它的速度比SSD更快,並且能夠提供直接隨機訪問的特性。

CPU的內存柵障與刷新cache指令能夠保證NVDIMM數據的原子寫與一致性。

所以,NVDIMM非常適合用作文件系統或者數據庫元數據與日誌的存儲介質。

NVDIMM相關技術發展 編輯 SNIANVMExpressSNIA在2013年底相繼發表的NVM(Non-volatilememory)的硬件接口規範和編程模型規範。

定義了NVM的範圍為PCIE接口的flash存儲器,控制卡以及NVDIMM,PCM等可以隨機訪問的非易失性存儲器。

SNIA提出了blockvolume和persistentmemory兩種模型,並給出了每種模型能夠處理的命令集以及能完成的功能。

Blockvolume即傳統的塊設備模型,以塊為單位進行數據傳輸,採用與現有的ATA,SCSI,FC等協議具有相同的編程方式,比如PCIESSD,PCIERAIDcontroller就是此類模型。

Persistentmemory是具有直接隨機訪問與非易失性雙重特性的編程模型,可以採用傳統虛擬內存管理接口,為文件系統或者數據庫提供新的存儲行為。

NVDIMM即採用此類編程模型,同樣PCIE卡如果將其存儲空間映射至PCIE存儲域,並且能夠屏蔽底層的flash特性,亦能採用此類模型。

Linuxkernel操作系統方面,RicWheeler在2013LinuxFoundationCollaborationSummit提出了在Linux系統中支持NVM的想法,並且SNIA組織也已經給出了NVMe設備的Linux驅動。

在Ric的討論中,在兼容老式編程模型的API的基礎上,定義新的適合NVM設備的API,讓文件系統和數據庫都能更好地利用NVM的特性。

CPUIntel最新的家用機芯片Haswell-ECPU開始支持288pin的DDR4內存條。

在JEDEC最新的DDR4規範中 [3]  ,有4個pin為NVDIMM的電源與控制信號。

可見主流CPU與主板已經開始將NVDIMM加入商業化的存儲系統。

異步DRAM自刷新(ADR)技術是Intel在凌動S12X9家族處理器上推出的新技術,可保證在異常掉電時,CPU沖刷cache,寫回cache的髒數據,然後將DRAM設置進入自刷新狀態。

NVDIMM就是在DRAM處於自刷新狀態時將控制權由CPU移交給NVDIMM本身,ADR技術就是為NVDIMM量身定製。

另外,ADR技術能夠有選擇的在計算機熱啓動時,不對特定通道的DRAM進行重新初始化,從而保留DRAM中的數據。

包括MacroSAN、Dahua、Accusys、Qsan和Qnap等數據中心製造商已經宣佈開始支持S12X9處理器家族。

參考資料 1.    Whole-SystemPersistence[R].DushyanthNarayanan:MicrosoftResearch,2012 2.    DANIELP.BOVET.深入理解linux內核:中國電力出版社,2007:595-625 3.    JESD79-4DDR4SDRAMspecification[S].JEDECSOLIDSTATETECHNOLOGYASSOCIATION,2013. 圖集 NVDIMM的概述圖(1張) 詞條統計 瀏覽次數:次 編輯次數:26次歷史版本 最近更新: 一碗加糖饭 (2022-06-26) 1 發展歷史 2 應用 2.1 數據保護 2.2 磁盤緩存 2.3 存儲鏈 3 相關技術發展 百科協議    隱私協議    意見反饋 Beta 進入詞條 清除歷史記錄關閉 編輯 反饋 登錄



請為這篇文章評分?