AMD正在醞釀一項”PAN”內核功能可幫助提高Linux性能表現
AMD公司的開源工程師發出了一個關於新的內核功能”PAN”(即進程適應性自動NUMA)的評論請求。AMD早期顯示的數字表明,PAN可以幫助他們最新的服務器硬件上的一些工作負載的性能提高一個可衡量的數量。
擬議的PAN是進程自適應自動NUMA(Process Adaptive autoNUMA),是一種計算自動NUMA掃描週期的自適應算法。AMD公司的Bharata B Rao在Linux內核補丁系列的徵求意見稿中進一步解釋說:”在這種新方法(進程自適應自動NUMA或PAN)中,我們在每個進程水平上收集NUMA故障統計數據,這可以更好地捕捉到應用行為。此外,該算法根據遠程故障率來學習和調整掃描率。由於不拘泥於一個靜態閾值,該算法可以更好地應對不同的工作負載行為。由於進程的線程已經被視為一個群體,我們在任務的[內存管理]過程中添加了一堆指標來跟踪各種類型的故障,並從中得出掃描率。新的每進程故障統計只對每進程掃描週期的計算有貢獻,而現有的每線程統計繼續對numa_group統計有貢獻,這最終決定了跨節點遷移內存和線程的閾值。
對於終端用戶/AMD EPYC客戶來說,最重要的價值是PAN如何提升Linux性能。通過PAN的Linux內核構建,他們發現Graph500互連HPC基準與默認的Linux內核構建相比受益高達14.93%,NAS基準快了8%,PageRank只快了約0.37%,其他結果從不到1%到更重要的數字。這只是AMD到目前為止所評估的有限的測試選擇–如果這個補丁系列過了RFC階段的評估,成為其他內核維護者所支持的內容並最終被納入內核的上游,那麼接下來的基準測試值得關注。
到目前為止,還沒有其他內核開發者對進程自適應autoNUMA建議發表評論,但那些感興趣的人可以看到RFC系列,以了解更多關於這個功能或測試它。目前能夠給出的形式僅僅是不到400行的新代碼來改善Linux的NUMA行為。
了解更多:
https://lore.kernel.org/lkml/ 20220128052851.17162-1-bharata@amd.com /