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

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

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

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

VMware 針對 vSphere 在傲騰內存上的性能提升已經做了很多測試,大家可以參見 VMware 技術白皮書 “Persistent Memory Performance in vSphere 6.7 with Intel Optane DC persistent memory”。
長按二維碼查看

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