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