How to set maximum disk cache size?

Laszlo Nagy gandalf at shopzeus.com
Fri Nov 16 04:13:30 PST 2007


Bruce Cran írta:
> Wojciech Puchar wrote:
> > Laszlo wrote:
>>> Hi All,
>>>
>>> Is there a way (sysctl?) to tell FreeBSD (6.2 RELEASE) how many 
>>> memory can it use for caching file data from disk?
>>>
>>> It might be that FreeBSD will use all available RAM, and reduce the 
>>> cache 
>> it already does
>
> It may seem strange since it's generally accepted that you can never 
> have enough disk cache, but FreeBSD apparently doesn't actually use 
> all the free memory for caching.  By default it uses up to 256MB for 
> buffering/caching and there's no way it can use all available memory 
> on i386 in machines with more than 1GB installed since the 
> buffer/cache is allocated from KVM and the default maximum is 1GB.  
> You can increase the amount of memory used, but it might not help - 
> there's a thread on performance@ from 2004 which describes how it all 
> works; see 
> http://lists.freebsd.org/pipermail/freebsd-performance/2004-April/000785.html 
>
> The information there is quite old now though so I don't know if 
> things are done differently in 6.x.
OK, and how about amd64 arch? The reason I ask this is that we have a 
big postresql database (over 3GB) and PostgreSQL rely on the OS for 
caching files in memory. This database is mostly read-only, so it would 
be nice to use all free memory for caching. Especially that this machine 
is the database server, it does nothing else. Now, it is an i386 but we 
are about to migrate to AMD X2, then we can put in 8GB of memory. But 
only if the OS can use if for caching. Otherwise it would be useless.

Thank you for the link. That thread is quite old - things might have 
changed.

Thanks,

    Laszlo



More information about the freebsd-questions mailing list