Messages in this thread | | | Date | Thu, 13 Oct 2011 13:55:46 -0700 (PDT) | From | David Rientjes <> | Subject | Re: [PATCH -v2 -mm] add extra free kbytes tunable |
| |
On Thu, 13 Oct 2011, KAMEZAWA Hiroyuki wrote:
> sys_mem_shrink(int nid, int nr_scan_pages, int flags) > > This system call scans LRU of specified nodes and free pages on LRU. > This scan nr_scan_pages in LRU and returns the number of successfully > freed pages. > == > > Then, running this progam in SCHED_IDLE, a user can make free pages while > the system is idle. If running in the highest priority, a user can keep > free pages as he want. If a user run this under a memcg, user can free > pages in a memcg. >
Satoru was specifically talking about the VM using free memory for pagecache, so doing echo echo 1 > /proc/sys/vm/drop_caches can mitigate that almost immediately. I think the key to the discussion, though, is that even the application doesn't know it's bursty memory behavior before it happens and the kernel entering direct reclaim hurts latency-sensitive applications.
If there were a change to increase the space significantly between the high and min watermark when min_free_kbytes changes, that would fix the problem. The problem is two-fold: that comes at a penalty for systems or workloads that don't need to reclaim the additional memory, and it's not clear how much space should exist between those watermarks.
| |