英特爾傲騰持久內(nèi)存有兩種操作模式,內(nèi)存模式(MemoryModel)和APPDirect模式,無論哪種模式,總歸都能享受到大容量,親民價的內(nèi)存,廣而言之,有了大內(nèi)存之后,機(jī)器重啟速度快了,運(yùn)行各種程序的速度只能更快不會變慢,升級系統(tǒng)什么的也會變的更快。
之前的文章里提到過隨著負(fù)責(zé)的提升,延遲并不會像NAND一樣升高,傲騰的特性有這樣一點(diǎn),寫之前不需要先擦除,直接寫就可以。
內(nèi)模式:大容量,價格親民,易失性
當(dāng)配置成內(nèi)存模式后,應(yīng)用和操作系統(tǒng)將其視為易失性內(nèi)存池,跟現(xiàn)在基于DRAM的系統(tǒng)沒什么分別。在這種模式下,不需要應(yīng)用程序做持久存儲器編程,斷電時數(shù)據(jù)會丟失。
在內(nèi)存式下,DRAM作為高頻熱數(shù)據(jù)的Cache,但英特爾的傲騰數(shù)據(jù)中心持久內(nèi)存的容量能做到非常大,英特爾至強(qiáng)可擴(kuò)展處理器的內(nèi)存控制器來管理Cache。
當(dāng)需要內(nèi)存讀取數(shù)據(jù)時,內(nèi)存控制器先查看一下DRAMcache,如果有的話,那就從DRAM里讀數(shù)據(jù),延遲非常低。如果DRAM里沒有這個數(shù)據(jù)的話,就從英特爾傲騰數(shù)據(jù)中心持久內(nèi)存里讀數(shù)據(jù),延遲也會相應(yīng)高點(diǎn)。
應(yīng)用程序數(shù)檢索相對穩(wěn)定時與內(nèi)存控制器匹配后可提高緩存的命中率,性能表現(xiàn)自然會相應(yīng)提升,會有近似于DRAM的表現(xiàn)。當(dāng)請求數(shù)據(jù)的隨機(jī)性比較大的時候,性能表現(xiàn)會差一些,大約100納秒的級別。
在內(nèi)存模式,數(shù)據(jù)是易失性的,斷電的話數(shù)據(jù)就沒了。不丟失數(shù)據(jù)的模式是第二種模式,叫AppDircet模式。
內(nèi)存模式將大容,平民價的內(nèi)存帶給了原來的應(yīng)用,包括虛擬化的數(shù)據(jù)庫,大數(shù)據(jù)分析應(yīng)用非常適合用這個。
AppDirct模式:大內(nèi)存,親民價,非易失性持久
AppDirec筆者目前還沒看見官方怎么翻譯,AppDirect翻譯成“應(yīng)用直連”模式可能比較合適,此前,應(yīng)用軟件訪問存儲的過程比較復(fù)雜,想拿到數(shù)據(jù)的過程比較繞,AppDirect模式下應(yīng)用可直接連到硬件,通過DDR內(nèi)存通道拿到存儲,把文件系統(tǒng)當(dāng)內(nèi)存用,軟件無需做太多適應(yīng)和修改。
當(dāng)配置成AppDiect之后,應(yīng)用和操作系統(tǒng)會識別出有兩種直接載入(directload)/存內(nèi)存(Storememory)模式,會自動判斷哪些讀寫操作適合DRAM還是傲騰持久內(nèi)存。
需要低延遲同時不需要久存儲的數(shù)據(jù)可以放在DRAM上。需要持久存儲或者結(jié)構(gòu)化存儲的大量數(shù)據(jù)適合放在傲騰數(shù)據(jù)中心持久內(nèi)存上。如果想讓內(nèi)存中的數(shù)據(jù)持久化,那么肯定就得選AppDirect模式了。
內(nèi)存數(shù)據(jù)庫,內(nèi)存分析框架需要快速存儲的應(yīng)用都非常適合用AppDirec模式。傲騰持久內(nèi)存有其特殊性,但仍有非常適用于此的應(yīng)用。
AppDirect模式要能識別持久內(nèi)存的文件系統(tǒng),該文件系統(tǒng)需要操作系統(tǒng)或者虛擬環(huán)境的支持,包括微軟WinServer2019,Ubuntu,RedHat,VMwareESXv6.7都支持傲騰數(shù)據(jù)中心持久內(nèi)存,思科的Hyperflex超融合也支持,RDMA技術(shù)也支持。
模式?jīng)Q定了系統(tǒng)能使用多少內(nèi)存在AppDirect模式下,DRAM和英特爾傲騰數(shù)據(jù)中心持久內(nèi)存,在內(nèi)存模式(MemoryMode)下,DRAM和傲騰持久內(nèi)存都算內(nèi)存,在內(nèi)存模式下,DRAM用作cache,不作為獨(dú)立的內(nèi)存資源來顯示,簡單說系統(tǒng)不把它認(rèn)作內(nèi)存。
比如,一個平臺里有1.536B的英特爾傲騰持久內(nèi)存和192GB的DRAM內(nèi)存,如果是AppDirect模式下的話,系統(tǒng)顯示有1.728TB內(nèi)存,如果是內(nèi)存模式的話,只能顯示1.536TB的內(nèi)存。
系統(tǒng)管理員可以通過BIOS或者內(nèi)管理工具來配置這個模式,也可以把內(nèi)存池分區(qū),不同分區(qū)可同時運(yùn)行兩種模式。
在非易失性的AppDirect式下,內(nèi)存數(shù)據(jù)有可能泄露掉,比較安全的flush掉內(nèi)存的方式是丟掉內(nèi)存加密的密鑰,但在共享內(nèi)存場景下也不行,比較合理的方式是參考SSD中用的TRIM指令。
評論