4月2日,VMware 宣布了 vSphere 對(duì)于 Intel 傲騰內(nèi)存的支持,傲騰內(nèi)存的全名是 Intel Optane DC Persistent Memory(DCPMM,代號(hào)“Apache Pass”)。它是一種非易失性?xún)?nèi)存 (NVDIMM – No-volatile DRAM),采用跟 Optane SSD 同樣的 3DXpoint 技術(shù),以 DIMM 的形式插在主板的內(nèi)存插槽上,由 CPU 的內(nèi)存控制器來(lái)訪(fǎng)問(wèn),它的訪(fǎng)問(wèn)速度雖然比 DRAM 慢一些,但是要遠(yuǎn)遠(yuǎn)快于 SSD。
Intel 傲騰內(nèi)存提供了 128GB、256GB 和 512GB 三種容量,目前最大容量的單條 DDR4 內(nèi)存條是 128GB,所以傲騰內(nèi)存可以提供遠(yuǎn)超現(xiàn)有 DDR4 的內(nèi)存容量,使服務(wù)器的內(nèi)存總量輕易超過(guò) TB 級(jí)別。在提供更大容量的優(yōu)勢(shì)下,傲騰內(nèi)存還比傳統(tǒng)的 DDR4 內(nèi)存更便宜,并且是非易失性的,遇到斷電或系統(tǒng)重啟的情況也不會(huì)丟失數(shù)據(jù)。有了傲騰內(nèi)存,服務(wù)器可以大幅度減少對(duì)于傳統(tǒng)存儲(chǔ)設(shè)備 (SSD 和硬盤(pán)) 的依賴(lài),把大部分的操作放在系統(tǒng)內(nèi)存中完成,從而提高系統(tǒng)整體性能。

Intel 為傲騰內(nèi)存準(zhǔn)備了“Memory”和“AppDirect”兩種訪(fǎng)問(wèn)模式,分別適用于不同的應(yīng)用場(chǎng)景。
Memory Mode
在這種模式下,傲騰內(nèi)存需要跟 DRAM 內(nèi)存配合使用,DRAM 內(nèi)存作為傲騰內(nèi)存的高速緩存;系統(tǒng)內(nèi)存的容量由傲騰內(nèi)存 (DCPMM) 的容量所決定,而不包括 DRAM 那部分內(nèi)存。當(dāng) CPU 訪(fǎng)問(wèn)內(nèi)存數(shù)據(jù)時(shí),內(nèi)存控制器首先檢查 DRAM 緩存,如果要訪(fǎng)問(wèn)的數(shù)據(jù)存在,訪(fǎng)問(wèn)延遲就跟 DRAM 的速度一樣;如果要訪(fǎng)問(wèn)的數(shù)據(jù)不在緩存中,則需要從傲騰內(nèi)存讀取,這會(huì)造成一點(diǎn)小小的延遲。對(duì)于持續(xù)的內(nèi)存數(shù)據(jù)訪(fǎng)問(wèn),內(nèi)存控制器會(huì)通過(guò)應(yīng)用模式預(yù)測(cè)來(lái)提高緩存的命中率,從而使整體訪(fǎng)問(wèn)性能接近于全 DRAM 的配置;對(duì)于大量的隨機(jī)內(nèi)存訪(fǎng)問(wèn),系統(tǒng)性能跟 DRAM 相比會(huì)有一點(diǎn)損失。另外,在這種模式下,存放在傲騰內(nèi)存中的數(shù)據(jù)是易失性的,掉電的情況下不會(huì)持續(xù)保存。
Memory 模式為傳統(tǒng)應(yīng)用提供了低成本、大容量的內(nèi)存配置,適用于虛擬化的數(shù)據(jù)庫(kù)系統(tǒng)、大數(shù)據(jù)分析這一類(lèi)應(yīng)用;這種訪(fǎng)問(wèn)模式對(duì)于上層的操作系統(tǒng)和應(yīng)用是透明的,它們不需要知道非易失性?xún)?nèi)存的存在,應(yīng)用不需要任何修改就可以直接享受傲騰內(nèi)存所帶來(lái)的性能提升。

AppDirect Mode
在這種模式下,操作系統(tǒng)和應(yīng)用都需要明確地知道系統(tǒng)中有兩種不同類(lèi)型的內(nèi)存,清楚地知道應(yīng)該向 DRAM 和傲騰內(nèi)存中寫(xiě)入不同類(lèi)型的數(shù)據(jù)。不需要持久性存儲(chǔ)但是要求低延遲的數(shù)據(jù)操作需要在 DRAM 上執(zhí)行;需要持久性存儲(chǔ)的數(shù)據(jù)應(yīng)該被保存到傲騰內(nèi)存中。AppDirect 是使用傲騰內(nèi)存非易失性功能的唯一模式。在這一模式下,系統(tǒng)內(nèi)存的容量是由 DRAM 和傲騰內(nèi)存的總和決定的,這跟 Memory 模式有區(qū)別。舉個(gè)例子,一臺(tái)服務(wù)器配有 1.536 TB 傲騰內(nèi)存和 192 GB DRAM,采用 AppDirect 模式的話(huà),系統(tǒng)內(nèi)存總量為 1.728 TB;但是采用 Memory 模式的話(huà),系統(tǒng)內(nèi)存就只有 1.536 TB,因?yàn)槟?192GB DRAM 只是被用作了高速緩存。
AppDirect 模式適用于內(nèi)存數(shù)據(jù)庫(kù)等需要超高速數(shù)據(jù)存儲(chǔ)的應(yīng)用,可以把所有的數(shù)據(jù)都放在內(nèi)存中來(lái)處理,傲騰內(nèi)存能有效提升這類(lèi)應(yīng)用的性能。但是,這種模式對(duì)于操作系統(tǒng)和應(yīng)用都不是透明的,需要針對(duì)非易失性?xún)?nèi)存進(jìn)行優(yōu)化,才能夠發(fā)揮傲騰內(nèi)存所帶來(lái)的優(yōu)勢(shì),F(xiàn)在已經(jīng)有不少針對(duì)非易失性?xún)?nèi)存優(yōu)化的應(yīng)用,稱(chēng)之為 PMEM-aware 應(yīng)用,如聯(lián)機(jī)事務(wù)數(shù)據(jù)庫(kù) SQL Server 和內(nèi)存數(shù)據(jù)庫(kù) Redis 等,它們能夠充分利用傲騰內(nèi)存的特點(diǎn)發(fā)揮出最大的性能優(yōu)勢(shì)。

vSphere 對(duì)于傲騰內(nèi)存的支持
4月2日,VMware 宣布了 vSphere 對(duì)于支持傲騰內(nèi)存的支持,支持傲騰內(nèi)存需要 vSphere 企業(yè)增強(qiáng)版以上的版本。
- Memory 模式:從 vSphere 6.5EP13 (ESXi650-201903001) 和 vSphere 6.7EP05 (ESXi670-201811001) 開(kāi)始支持,這種模式目前僅支持有限的用例,用戶(hù)要使用這種模式的話(huà)請(qǐng)跟 VMware 銷(xiāo)售代表聯(lián)系一下。
- AppDirect 模式:從 vSphere 6.7EP05 開(kāi)始支持,VMware 鼓勵(lì)用戶(hù)多使用這種模式。
用戶(hù)可以通過(guò) VMware 兼容性指南 VMware Compatibility Guide (VCG) 查找支持傲騰內(nèi)存的服務(wù)器硬件。vSphere 在2路服務(wù)器上最多支持 6TB 傲騰內(nèi)存,在4路服務(wù)器上最多支持 12TB 傲騰內(nèi)存。
vSphere 中的虛機(jī)可以通過(guò)兩種方法來(lái)使用傲騰內(nèi)存:
- vPMEMDisk (Virtual Persistent Memory Disk):傲騰內(nèi)存被映射成為一塊虛擬硬盤(pán)提供給虛機(jī)使用,這種模式下虛機(jī)里的操作系統(tǒng)和應(yīng)用都不需要知道非易失性?xún)?nèi)存,傳統(tǒng)的操作系統(tǒng)和應(yīng)用都可以正常使用這種模式。
- vPMEM (Virtual Persistent Memory):傲騰內(nèi)存被映射成為虛機(jī)中的非易失性?xún)?nèi)存 (NVDIMM),這種情況下要求虛機(jī)中的操作系統(tǒng)能夠支持 NVDIMM (例如 Windows Server 2016 和 RHEL 7.4),然后把它映射成為存儲(chǔ)設(shè)備提供給上層應(yīng)用;如果是 PMEM-aware 應(yīng)用的話(huà),也可以在虛機(jī)里直接訪(fǎng)問(wèn) vPMEM。

VMware 針對(duì) vSphere 在傲騰內(nèi)存上的性能提升已經(jīng)做了很多測(cè)試,大家可以參見(jiàn) VMware 技術(shù)白皮書(shū) “Persistent Memory Performance in vSphere 6.7 with Intel Optane DC persistent memory”。
長(zhǎng)按二維碼查看

VMware 技術(shù)白皮書(shū)
在白皮書(shū)中,我們可以看到傲騰內(nèi)存對(duì)于提升應(yīng)用性能還是很有幫助的,把傲騰內(nèi)存當(dāng)作存儲(chǔ)來(lái)用也已經(jīng)比 SSD 有很大的性能提升;如果是 PMEM-aware 應(yīng)用,通過(guò)針對(duì)非易失性?xún)?nèi)存的優(yōu)化,性能提升更多。以下是白皮書(shū)中的兩個(gè)例子,一個(gè)是利用 IO 測(cè)試工具 FIO 測(cè)試 4KB 讀寫(xiě),另一個(gè)是內(nèi)存數(shù)據(jù)庫(kù) Redis 在不同配置下的吞吐量比較。
延伸閱讀
將 VMware vSphere / vSAN 軟件與 Intel 的最新硬件平臺(tái)技術(shù)相結(jié)合,可以為用戶(hù)交付最佳的超融合架構(gòu)平臺(tái),幫助用戶(hù)簡(jiǎn)化數(shù)據(jù)中心管理,降低采購(gòu)和運(yùn)維成本,輕松應(yīng)對(duì)企業(yè)在數(shù)字化轉(zhuǎn)型中面對(duì)的各種挑戰(zhàn)。
VMware vSAN 是最佳的存儲(chǔ)方案平臺(tái),具有管理簡(jiǎn)便、高性能、低成本、易擴(kuò)展的特點(diǎn),在 vSAN 平臺(tái)上可以支持任何類(lèi)型的應(yīng)用。
Intel 至強(qiáng)處理器提供最強(qiáng)計(jì)算能力,基于傲騰 (Optane) 和 3D NAND 技術(shù)的固態(tài)盤(pán)是理想的高速緩存,以太網(wǎng)融合網(wǎng)卡提供穩(wěn)定的網(wǎng)絡(luò)帶寬和低網(wǎng)絡(luò)延遲。