git: kernel - Adjust vm.pageout_memuse_mode
Matthew Dillon
dillon at crater.dragonflybsd.org
Wed Feb 12 17:14:33 PST 2020
commit 689a6e25b47cda5f7dd2eac6d8119107d875f071
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Wed Feb 12 12:25:32 2020 -0800
kernel - Adjust vm.pageout_memuse_mode
* Generally speaking pages in the INACTIVE queue are cycled through
the queue once if they are clean, and twice if they are dirty
(cycle, clean, cycle again).
This could lead to an excessive lack of progress when paging heavily
and a lot of dirty data is present in INACTIVE, such as when a great
deal of just-written tmpfs related data is present.
* Change the default to cycle dirty pages through the queue just
once, same as clean pages.
* Only scan 1/10 of each of the 1024 ACTIVE / INACTIVE queues in
each pass. This is particularly important for the INACTIVE queue
because we want to give pages in this queue a chance to reactivate
and they might not be given that chance when the full queue is
scanned.
This became an issue when we greatly increased the number of queues
in previous SMP partitioning work (the CPU topology is mapped onto to
the queue space for initial allocation attempts in order to reduce
contention).
Summary of changes:
sys/vm/vm_pageout.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/689a6e25b47cda5f7dd2eac6d8119107d875f071
--
DragonFly BSD source repository
More information about the Commits
mailing list