git: VM - Adjust inactive_target and pageout code.

看板DFBSD_commit作者時間16年前 (2009/11/02 14:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
commit 51db7ca2caa1000f5b348048cf568c6372121061 Author: Matthew Dillon <dillon@apollo.backplane.com> Date: Sun Nov 1 21:50:32 2009 -0800 VM - Adjust inactive_target and pageout code. Continue tuning page recyclement in the VM paging queues. Fix an issue where the memory used to recycle one-time-use cache data becomes too constricted. For example if blogbench is run on one directory and then run again on another directory, too many pages cached from the first run were being left in the active queue and not recycled. The only way to deal with this is to allow the pageout code to pull pages from the active queue to the inactive queue. This in turn resurrects the issue of overnight processes (whos pages are idle, after all), getting excessively uncached. I think the goal needs to be to reduce excessive recyclement of such pages over a shorter time-frame, such as an hour. Adjusting vfs.vm_cycle_point higher may help (but we don't do it in this commit). * Change the pageout code a bit to pull a limited number of pages from the active queue to the inactive queue if the inactive target has not been met but the cache+free targets were satisfied from the inactive queue. This allows the inactive_target to be increased without creating additional mangement overhead on the machine. * Increase the inactive_target to 1/2 of probed memory. * Document the issues involved with pulling pages out of the active queue. Summary of changes: sys/vm/vm_pageout.c | 35 ++++++++++++++++++++++++++++------- 1 files changed, 28 insertions(+), 7 deletions(-) http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/51db7ca2caa1000f5b348048cf568c6372121061 -- DragonFly BSD source repository
文章代碼(AID): #1AxdpdtL (DFBSD_commit)