深圳先進(jìn)院在工作負(fù)載感知的NUMA服務(wù)器頁表自動復(fù)制關(guān)鍵技術(shù)研究方面取得重要進(jìn)展
近日,中國科學(xué)院深圳先進(jìn)技術(shù)研究院數(shù)字所異構(gòu)智能計算體系結(jié)構(gòu)與系統(tǒng)研究中心在工作負(fù)載感知的NUMA服務(wù)器頁表自動復(fù)制關(guān)鍵技術(shù)研究方面取得重要進(jìn)展,相關(guān)成果WASP: Workload-Aware Self-Replicating Page-Tables for NUMA Servers 被計算機體系結(jié)構(gòu)頂級會議ASPLOS (Architectural Support for Programming Languages and Operating Systems,CCF-A類會議)2024錄用為長文。博士生曲虹亮為第一作者,喻之斌研究員為第二和通訊作者。
NUMA(Non-Uniform Memory Access,非統(tǒng)一內(nèi)存訪問)是一種服務(wù)器架構(gòu),是針對多處理器系統(tǒng)的一種內(nèi)存組織方式。在這種架構(gòu)中,應(yīng)用程序被分配到不同的節(jié)點,每個節(jié)點擁有自己的本地內(nèi)存。程序可以訪問本地內(nèi)存和其他節(jié)點的內(nèi)存,但訪問本地內(nèi)存的速度要快于訪問其他節(jié)點的遠(yuǎn)端內(nèi)存。訪問遠(yuǎn)端內(nèi)存最終會導(dǎo)致程序性能下降,這稱為NUMA效應(yīng)。
針對NUMA服務(wù)器上的大內(nèi)存工作負(fù)載,頁表自復(fù)制可以減少頁表引起的NUMA效應(yīng)。當(dāng)前的頁表自復(fù)制技術(shù)只能由用戶手動啟用。然而,頁表自復(fù)制技術(shù)可能會提高,也可能會損害程序的性能,由用戶去判斷是否開啟和何時開啟是困難的。因此識別影響頁表自復(fù)制效果的因素并實現(xiàn)其自動化開啟/關(guān)閉至關(guān)重要。
本研究是首個研究并實現(xiàn)頁表自復(fù)制自動化的方法。我們對程序的特性和系統(tǒng)中程序混部對程序獲得頁表復(fù)制收益的影響進(jìn)行分析,提出了兩項創(chuàng)新技術(shù)。首先,我們確定了一組關(guān)鍵指標(biāo),這些指標(biāo)在大多數(shù)處理器架構(gòu)上都可獲得,并可用于指示是否應(yīng)啟用/禁用頁表復(fù)制。其次,基于這些指標(biāo)我們設(shè)計了一種分層和漸進(jìn)的機制,以自動啟用/禁用特定程序的頁表復(fù)制,從而提高該程序的性能。
最后,我們在arm64和x86_64架構(gòu)的服務(wù)器上都進(jìn)行了驗證。實驗結(jié)果表明,本研究在多NUMA節(jié)點場景下可以將程序的性能提高1.82倍,在進(jìn)程遷移情況下可以提高6.69倍。此外,它可以自動將數(shù)據(jù)中心應(yīng)用程序的整體性能提高1.36倍。這表明本研究可以在云數(shù)據(jù)中心中得到實際應(yīng)用。
ASPLOS (Architectural Support for Programming Languages and Operating Systems)是由ACM舉辦的計算機體系結(jié)構(gòu)領(lǐng)域的頂級會議,與HPCA, ISCA, MICRO并稱為計算機體系結(jié)構(gòu)領(lǐng)域的“四大頂會”。 參會對象包括微體系結(jié)構(gòu)、云計算、計算機系統(tǒng)等領(lǐng)域的研究人員或?qū)W生。
WASP工作流程
WASP 決策機制
WASP與最先進(jìn)頁表復(fù)制程序Mitosis對比(多NUMA節(jié)點場景)
WASP與最先進(jìn)頁表復(fù)制程序Mitosis對比(進(jìn)程遷移場景)
附件下載: