tech-kern archive

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

Re: vmem(9) (was Re: netbsd-6: pagedaemon freeze when low on memory)



On Tue, Mar 19, 2013 at 06:55:54PM -0400, Greg Troxel wrote:
> 
> Thor Lancelot Simon <tls%panix.com@localhost> writes:
> 
> > On Tue, Mar 19, 2013 at 04:05:25PM -0400, Greg Troxel wrote:
> >> 
> >> This is perhaps overly complex, but it seems like all of the drain
> >> routines need some sort of "how hard" parameter, because freeing cached
> >> objects that haven't been accessed in 1000s doesn't really hurt, and as
> >> you bring the stale lifetime down to 0s it begins to hurt more and be
> >> thrashing.  So maybe that parameter really is in seconds.  This seems
> >> consistent with the intent in the Bonwick paper, which does not explain
> >> the strategy behind the back-end freeing mechanism (pool_drain, in our
> >> terms).
> >
> > I think pools should be (slightly) leaky buckets.
> 
> So do you mean that pools should free a page every so often if it's
> available, so that a pool's usage of unallocated pages decays as
> e^-(t/60s), or something like that?

Yes.  Just like that.  I think it might keep a number of common
cyclical workloads from becoming pathological so that they end
up trying to aggressively drain.

Thor


Home | Main Index | Thread Index | Old Index