v2
2026-10-28
内存分层晋升启发式 · v2
使空闲空间晋升旁路可配置,并避免仅内存分层的晋升缺页污染 AutoNUMA 任务放置统计,从而控制快慢层晋升。
原始补丁链接
子 Patch(3)
1/3
sched/numa: make free-space tiering promotion bypass configurable
内存 tiering 原本只要 fast tier 有空间就提升近期访问的 slow tier 页;为保留 DRAM/CXL 容量和带宽分布,给该 free-space bypass 加可配置开关,避免短冷访问或热访问突发在 DRAM 空闲时把负载拉回 fast tier。
2/3
sched/numa: do not feed tiering promotions into task placement stats
tiering-only 模式下 slow-tier folio 的 last-cpupid 被复用为访问时间,numa_migrate_check 返回全 1,可能把提升当作普通首次 AutoNUMA fault;成功后 do_numa_page 把 top-tier 节点报给 task_numa_fault,污染 p->numa_faults/locality 和 task_numa_placement。补丁阻止该反馈进入任务放置统计。
3/3
sched/numa: fix scan-period adjustment for tiering-only mode
tiering-only 的成功提升被当作 private remote fault 喂给 update_task_scan_period,local/shared 为 0 触发早慢路径并把 p->numa_scan_period 翻倍,反复提升会推到上限;补丁单独统计 tiering 反馈,仅 hotness/rate-limit 路径产生 cold/hot/throttled,free-space bypass 不计,仍用 70% 窗口阈值调扫描周期。