Linux Kernel 5.16將合併基於DAMON的內存回收機制

在亞馬遜的 DAMON 作為數據監控訪問框架被合併到 Linux Kernel 5.15 之後,在即將到來的 Linux Kernel 5.16 版本中會在該基礎上合併內存回收機制,用於在遇到系統 RAM 壓力時進行內存回收。作為 Andrew Morton 的 Linux 5.16 補丁系列的一部分,基於 DAMON 的內存回收在過去幾個月里一直在內核郵件列表中被審查。

Linux Kernel 5.16將合併基於DAMON的內存回收機制

這種主動的內存頁回收可以在輕度內存壓力下表現良好,並利用亞馬遜的 DAMON 框架來確定系統上要回收的 cold pages。

之前從事該補丁工作的開發人員將其好處總結為:“DAMON_RECLAIM 在 v5.13 Linux 內核上使用 ZRAM 交換設備和 50ms/s 時間配額,實現了 40.34% 的內存節省,運行時間開銷只有 3.38%。為此,DAMON_RECLAIM 只消耗了 5.16% 的單一CPU時間。在 CPU 消耗中,預計只有高達約 1.448% 的單次 CPU 時間用於訪問模式監控”。

Linux Kernel 5.16將合併基於DAMON的內存回收機制

Linux Kernel 5.16將合併基於DAMON的內存回收機制

Linux Kernel 5.16將合併基於DAMON的內存回收機制

這種基於DAMON的再生支持可配置的”速度限制”,以配置要花多少資源來確定哪些頁面可以被分頁出來。啟用這個功能需要啟用新的CONFIG_DAMON_RECLAIM構建選項。內核參數可以傳遞給damon_reclaim,或者還有/sys/modules/damin_reclaim作為一個sysfs接口。在這些選項中,有調整最小年齡作為識別冷內存區域的時間閾值,限制回收的時間,回收的內存大小,檢查水印前的最小和最大時間,採樣間隔,等等。

(0)
上一篇 2021-11-12 09:09
下一篇 2021-11-12 09:09

相关推荐