svn commit: r251282 - head/sys/kern

Konstantin Belousov kostikbel at gmail.com
Mon Jun 3 07:55:45 UTC 2013


On Sun, Jun 02, 2013 at 09:27:53PM -0700, Alfred Perlstein wrote:
> Hey Konstaintin, shouldn't this be scaled against the actual amount of 
> KVA we have instead of an arbitrary limit?
The commit changes the buffer cache to scale according to the available
KVA, making the scaling less dumb.

I do not understand what exactly do you want to do, please describe the
algorithm you propose to implement instead of my change.

> 
> -Alfred
> 
> On 6/2/13 9:16 PM, Konstantin Belousov wrote:
> > Author: kib
> > Date: Mon Jun  3 04:16:48 2013
> > New Revision: 251282
> > URL: http://svnweb.freebsd.org/changeset/base/251282
> >
> > Log:
> >    When auto-sizing the buffer cache, limit the amount of physical memory
> >    used as the estimation of size, to 32GB.  This provides around 100K of
> >    buffer headers and corresponding KVA for buffer map at the peak.
> >    Sizing the cache larger is not useful, also resulting in the wasting
> >    and exhausting of KVA for large machines.
> >    
> >    Reported and tested by:	bdrewery
> >    Sponsored by:	The FreeBSD Foundation
> >
> > Modified:
> >    head/sys/kern/vfs_bio.c
> >
> > Modified: head/sys/kern/vfs_bio.c
> > ==============================================================================
> > --- head/sys/kern/vfs_bio.c	Mon Jun  3 04:11:42 2013	(r251281)
> > +++ head/sys/kern/vfs_bio.c	Mon Jun  3 04:16:48 2013	(r251282)
> > @@ -560,7 +560,8 @@ kern_vfs_bio_buffer_alloc(caddr_t v, lon
> >   			nbuf += min((physmem_est - 4096) / factor,
> >   			    65536 / factor);
> >   		if (physmem_est > 65536)
> > -			nbuf += (physmem_est - 65536) * 2 / (factor * 5);
> > +			nbuf += min((physmem_est - 65536) * 2 / (factor * 5),
> > +			    32 * 1024 * 1024 / (factor * 5));
> >   
> >   		if (maxbcache && nbuf > maxbcache / BKVASIZE)
> >   			nbuf = maxbcache / BKVASIZE;
> >
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 834 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/svn-src-head/attachments/20130603/d826048f/attachment.sig>


More information about the svn-src-head mailing list