Re: [PATCH v3 0/3] idle memory tracking
From: Minchan Kim <hidden>
Date: 2015-04-29 05:03:01
Also in:
cgroups, linux-mm, lkml
On Tue, Apr 28, 2015 at 03:24:39PM +0300, Vladimir Davydov wrote:
Hi, This patch set introduces a new user API for tracking user memory pages that have not been used for a given period of time. The purpose of this is to provide the userspace with the means of tracking a workload's working set, i.e. the set of pages that are actively used by the workload. Knowing the working set size can be useful for partitioning the system more efficiently, e.g. by tuning memory cgroup limits appropriately, or for job placement within a compute cluster. ---- USE CASES ---- The unified cgroup hierarchy has memory.low and memory.high knobs, which are defined as the low and high boundaries for the workload working set size. However, the working set size of a workload may be unknown or change in time. With this patch set, one can periodically estimate the amount of memory unused by each cgroup and tune their memory.low and memory.high parameters accordingly, therefore optimizing the overall memory utilization. Another use case is balancing workloads within a compute cluster. Knowing how much memory is not really used by a workload unit may help take a more optimal decision when considering migrating the unit to another node within the cluster.
Another usecase I have a interest is working with per-process reclaim. https://lwn.net/Articles/545668/ With idle tracking, we could reclaim idle pages only by smart user memory-manager. Thanks. -- Kind regards, Minchan Kim