|From:||Martin Hicks <firstname.lastname@example.org>|
|To:||Andrew Morton <email@example.com>, Linux-MM <firstname.lastname@example.org>|
|Subject:||[PATCH/RFC 0/4] VM: Manual and Automatic page cache reclaim|
|Date:||Wed, 27 Apr 2005 11:08:48 -0400|
|Cc:||Ray Bryant <email@example.com>, firstname.lastname@example.org|
Hi, The following set of patches is response to the first round of comments that were sent out in February http://marc.theaimsgroup.com/?l=linux-kernel&m=110839... The consensus of this thread was that manual reclaim should happen through a syscall and be per-node, and that automatic reclaim should probably happen through mempolicy hints. This set is against 2.6.12-rc2-mm2 (sorry for not being against -mm3. It doesn't boot correctly on Altix) The patches introduce two different ways to free up page cache from a node: manually through a syscall and automatically through flag modifiers to a mempolicy. Currently if a job is started and there is page cache lying around on a particular node then allocations will spill onto remote nodes and page cache won't be reclaimed until the whole system is short on memory. This can result in a signficiant performance hit for HPC applications that planned on that memory being allocated locally. Here's a little summary of the pages in the set: 1/4: Merge LRU pages This is the opposite of isolate_lru_pages(). It merges pages from a list back onto the appropriate LRU lists. 2/4: Local reclaim core The reclaim code. It extends shrink_list() so it can be used to scan the active list as well. The core of all of this is reclaim_clean_pages(). It tries to remove a specified number of pages from a zone's cache. It does this without swapping or doing writebacks. The goal here is to free easily freeable pages. 3/4: toss_page_cache_node() syscall This adds the manual reclaim method via a syscall. 4/4: localreclaim flags for mempolicies Adds a flags argument to set_mempolicy() and add a new mempolicy. mh -- Martin Hicks || Silicon Graphics Inc. || email@example.com -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to firstname.lastname@example.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"email@example.com"> firstname.lastname@example.org </a>
Copyright © 2005, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds