NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/54209: NetBSD 8 large memory system performance extremely low

The following reply was made to PR kern/54209; it has been noted by GNATS.

From: (Michael van Elst)
Subject: Re: kern/54209: NetBSD 8 large memory system performance extremely low
Date: Wed, 5 Jun 2019 07:47:54 -0000 (UTC) writes:
 >	We observed 100% system time, almost no I/O (for DB or the rsyncs), also free memory was stuck for long times at 380Mb.
 >	Inactive memory was at 7Gb instead of the expected 2/3 main memory.
 >	Lots of memory starvation was happening.
 >	The memory starvation effects on a larger memory system seem to be a bit counterintuative.
 That's how the page daemon policy works.
 Active pages have been accessed recently, inactive pages haven't.
 When active pages of type (exec,file,anon) exceed their max value, then
 pages of the other types get reactivated, so there is some pressure
 to reclaim pages of only the type that is overused. This stops when
 all types get overused.
 That method doesn't work good if you have mostly active pages of the
 overused type as you wait for one of them to become inactive.
 There are event counters (vmstat -e) to show this page reactivation.
 pdpolicy reactanon                            77094        0 misc
 pdpolicy reactexec                            50778        0 misc
 When the file cache exceeded the maximum (that's pretty common),
 the anon and exec types got frequently reactivated. This effectively
 prevents programs from being paged out by the file cache.
 Lowering all 'max' values probably makes all types 'overused', then
 we don't apply this kind of pressure (as all types would need it)
 and page allocation gets fast again.
                                 Michael van Elst
                                 "A potential Snark may lurk in every tree."

Home | Main Index | Thread Index | Old Index