實驗中,將12根DDR5內(nèi)存組成NUMA0,將另外8個美光CXL DDR4內(nèi)存模組組成CXL NUMA1,考慮到性能差異可能會帶來的問題,相關(guān)研究者已經(jīng)在Linux內(nèi)核(6.11.6)層面進(jìn)行了優(yōu)化。
上圖清晰展示了在高負(fù)載條件下,通過將DRAM和CXL內(nèi)存組合使用,可以顯著提升系統(tǒng)帶寬并降低延遲。DRAM + CXL 的優(yōu)化交錯配置(interleaving strategy) 實現(xiàn)了內(nèi)存資源的高效利用,特別是對于帶寬密集型工作負(fù)載。
測試人員還發(fā)現(xiàn),DRAM和CXL在不同讀寫比例下,帶寬的表現(xiàn)會有明顯差異。其中,DRAM在寫的比例更多時,內(nèi)存帶寬會下降。而CXL利用了PCIe雙向傳輸?shù)哪芰?,在寫的比例越來越高的時候,帶寬會越來越高。
DRAM的延遲較低,但是帶寬部分其實不如CXL,在高負(fù)載場景下,DRAM的帶寬瓶頸會導(dǎo)致性能迅速下降。CXL內(nèi)存雖然內(nèi)存延遲比較高,但憑借優(yōu)秀的雙向讀寫能力,能提供額外的帶寬擴(kuò)展,緩解系統(tǒng)內(nèi)存壓力。
這意味著,在實際應(yīng)用中,如果想更好地利用CXL的優(yōu)勢,還得看具體場景對延遲和帶寬的需求。從操作層面來看,就需要用戶根據(jù)工作負(fù)載來調(diào)整使用的DRAM和CXL內(nèi)存的配比。
接下來看,在實測數(shù)據(jù)中,DDR5 DRAM搭配DDR4 CXL內(nèi)存模組是如何提高性能的。
在大語言模型推理任務(wù)中,研究人員使用了Intel PyTorch 擴(kuò)展(IPEX),該開源工具對英特爾硬件進(jìn)行了專門優(yōu)化。通過采用3:1 DRAM與CXL內(nèi)存比例,LLAMA3-8B-Instruct 的推理速度相比僅使用 DRAM 提升了17%。
FAISS 是由 Facebook AI 開發(fā)的高效相似性搜索庫,用于密集向量的聚類和搜索。在 2:1 DRAM與CXL比例下,F(xiàn)AISS 工作負(fù)載的查詢時間降低,性能提升了 23%。
說完了大家都比較關(guān)心的AI場景,接下來說HPC場景的價值。
OpenFOAM 是一款開源計算流體力學(xué)(CFD)軟件,用于模擬各種流體動力學(xué)場景。采用5:2 DRAM:CXL比例時,OpenFOAM工作負(fù)載的執(zhí)行時間縮短了22%。
HPCG基準(zhǔn)測試側(cè)重于稀疏線性系統(tǒng)的求解,強(qiáng)調(diào)內(nèi)存訪問模式和數(shù)據(jù)移動,反映真實科學(xué)和工程應(yīng)用的行為。在3:1 DRAM:CXL 比例 下,HPCG 基準(zhǔn)測試實現(xiàn)了 27% 的性能提升。
Xcompact3D基準(zhǔn)測試用于評估計算系統(tǒng)在求解不可壓縮Navier-Stokes方程時的效率,尤其適用于流體動力學(xué)模擬,如3D Taylor-Green渦流。在5:2 DRAM:CXL比例下,Xcompact3D基準(zhǔn)測試性能提升達(dá)25%。
POT3D基準(zhǔn)測試模擬三維Poisson方程,主要用于評估系統(tǒng)在科學(xué)與工程計算中的性能,尤其是在分子動力學(xué)和計算物理領(lǐng)域。采用 5:2 DRAM:CXL 比例 時,POT3D 工作負(fù)載性能提升了27%。
總之,CXL內(nèi)存的引入使得系統(tǒng)能夠有效地擴(kuò)展內(nèi)存帶寬,解決了傳統(tǒng)內(nèi)存架構(gòu)的帶寬瓶頸,尤其是在大規(guī)模AI訓(xùn)練和高性能計算等應(yīng)用中。通過DRAM和CXL內(nèi)存搭配,能夠根據(jù)不同負(fù)載的需求,靈活調(diào)整內(nèi)存資源的分配比例,最大化帶寬利用率。
實驗還表明,隨著CXL內(nèi)存技術(shù)的逐步成熟,未來的計算系統(tǒng)將能更好地滿足AI、大數(shù)據(jù)處理以及其他計算密集型應(yīng)用對內(nèi)存帶寬和容量的要求。通過合理配置內(nèi)存比例,系統(tǒng)能夠更加高效地處理高讀寫比率的混合負(fù)載,提升計算性能和響應(yīng)速度。