Inactive memory

Slawa Olhovchenkov slw at zxy.spb.ru
Mon Feb 6 13:05:26 UTC 2017


On Mon, Feb 06, 2017 at 01:17:11PM +0100, Fabian Keil wrote:

> Slawa Olhovchenkov <slw at zxy.spb.ru> wrote:
> 
> > What is 'Inactive' memory?
> 
> From sys/vm/vm_page.h:
> /*
>  * Each pageable resident page falls into one of four lists:
>  *
>  *	free
>  *		Available for allocation now.
>  *
>  *	cache
>  *		Almost available for allocation. Still associated with
>  *		an object, but clean and immediately freeable.
>  *
>  * The following lists are LRU sorted:
>  *
>  *	inactive
>  *		Low activity, candidates for reclamation.
>  *		This is the list of pages that should be
>  *		paged out next.
>  *
>  *	active
>  *		Pages that are "active" i.e. they have been
>  *		recently referenced.
>  *
>  */
> 
> A case-insensitive grep for "inactive" in the directory
> will result in a couple of additional relevant comments
> and implementation details.
> 
> > Can I let is definitly availably for allocation (after some time)?
> > Under some load I am got about 30GB of Inactive memory and I am
> > prefer migrate this memory to ARC cache.
> > 
> > Can I have assurance about freeing this memory under pressure?
> 
> While inactive memory is supposed to be freed under memory
> pressure, in vanilla FreeBSD the ARC may shrink to relieve
> memory pressure first. In extreme case the ARC may shrink
> to its limit while the inactive memory continues to grow.
> 
> In ElectroBSD, this patch is supposed to address this:
> https://www.fabiankeil.de/sourcecode/electrobsd/ElectroBSD-r312620-6cfa243f1516/0239-sys-vm-Limit-the-inactive-pages-more-aggressively.diff
> You could give it a try to see if it helps for your workload.

I am afraid this patch.

> If you haven't already, you also may want to look at:
> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=187594
> Among other things, it contains a bunch of (conflicting)
> theories about how the system behaves under memory pressure.

I am see some reports (in wild internet) about count as 'inactive'
used memory in tmpfs. I am not sure about conversion this pages to
free and ack this question.

Thanks for URLs, I am try different patch for ARC.


More information about the freebsd-hackers mailing list