日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

Memcg后臺異步回收內存

重要

本文中含有需要您注意的重要提示信息,忽略該信息可能對您的業務造成影響,請務必仔細閱讀。

當系統分配內存并在相應的Memcg中統計達到Memcg設定的內存上限時,將觸發Memcg級別的直接內存回收。直接內存回收是在內存分配上下文中同步進行的,會影響當前進程的性能。Alibaba Cloud Linux 2(內核4.19.81-17.al7及以上版本)和Alibaba Cloud Linux 3(內核5.10.134-12.al8及以上版本)新增了Memcg粒度的后臺異步回收功能,從而動態、高效的管理cgroup內存使用,避免資源耗盡。

警告
  • 當前Memcg的內存分配,可能會遞歸觸發父組的后臺異步回收。

  • 觸發Memcg后臺異步回收時,會從當前被觸發的Memcg開始,自上而下做層級回收。

  • 在配置了memory.high接口并且memory.high的值小于memory.limit_in_bytes接口的值時,接口memory.wmark_highmemory.wmark_low水位線的計算將基于memory.high而非memory.limit_in_bytes

memcg后臺異步回收功能接口說明

接口

說明

memory.wmark_ratio

設置是否啟用Memcg后臺異步回收功能,以及設置異步回收功能開始工作的memcg內存水位線。

單位:相對于memcg limit的百分比。

取值范圍:0~100。

  • 默認值為0,表示禁用memcg后臺異步回收功能。

  • 取值為非0時,表示開啟memcg后臺異步回收功能并設置對應的水位線。

memory.wmark_high

Memcg內存使用超過該接口的值時,后臺異步回收功能啟動。

只讀接口,說明如下:

  • 該接口的值由memory.limit_in_bytes * memory.wmark_ratio / 100計算獲得。

  • memcg后臺異步回收功能被禁用時,memory.wmark_high默認為一個最大值,從而達到永不觸發后臺異步回收功能的目的。

  • memcg根組目錄下不存在該接口文件。

memory.wmark_low

memcg內存使用低于該接口的值時,后臺異步回收結束。

只讀接口,說明如下:

  • 該接口的值由memory.wmark_high - memory.limit_in_bytes * memory.wmark_scale_factor / 10000計算得出。

  • memcg根組目錄下不存在該接口文件。

memory.wmark_scale_factor

控制memory.wmark_highmemory.wmark_low之間的間隔。

單位:相對于memcg limit的萬分比。

取值范圍:1~1000。

  • 在創建該接口時,會繼承父組的值(默認為50),即為memcg limit的千分之五。

  • memcg根組目錄不存在該接口文件。

接口配置示例

  1. 創建測試文件。

    sudo mkdir /sys/fs/cgroup/memory/test/
  2. 設置內存使用量限制接口memory.limit_in_bytes

    本示例限制為1 G。

    sudo sh -c 'echo 1G > /sys/fs/cgroup/memory/test/memory.limit_in_bytes'
  3. 配置memory.wmark_ratio接口。

    以設置異步回收功能開始工作的memcg內存水位線為memcg limit的95%為例。

    sudo sh -c 'echo 95 > /sys/fs/cgroup/memory/test/memory.wmark_ratio'
  4. 查看memcg內存控制組中接口的值。

    • 查看memory.wmark_scale_factor接口的值。

      cat /sys/fs/cgroup/memory/test/memory.wmark_scale_factor

      默認值為memcg limit的千分之五。接口值返回示例:50。

    • 查看memory.wmark_high接口的值。

      cat /sys/fs/cgroup/memory/test/memory.wmark_high
    • 查看memory.wmark_low接口的值。

      cat /sys/fs/cgroup/memory/test/memory.wmark_low