Re: Best OS & Configuration for Dual Xeon w/4GB & Adaptec

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

 



Jim C. Nasby wrote:
On Mon, Mar 20, 2006 at 02:15:22PM -0500, Vivek Khera wrote:

I think FreeBSD has a hard upper limit on the total ram it will use for disk cache. I haven't been able to get reliable, irrefutable, answers about it, though.


It does not. Any memory in the inactive queue is effectively your 'disk
cache'. Pages start out in the active queue, and if they aren't used
fairly frequently they will move into the inactive queue. From there
they will be moved to the cache queue, but only if the cache queue falls
below a certain threshold, because in order to go into the cache queue
the page must be marked clean, possibly incurring a write to disk. AFAIK
pages only go into the free queue if they have been completely released
by all objects that were referencing them, so it's theoretically
posisble for that queue to go to 0.

Exactly.

The so-called limit (controllable via various sysctl's) is on the amount of memory used for kvm mapped pages, not cached pages, i.e - its a subset of the cached pages that are set up for immediate access (the others require merely to be shifted from the 'Inactive' queue to this one before they can be operated on - a relatively cheap operation).

So its really all about accounting, in a sense - whether pages end up in the 'Buf' or 'Inactive' queue, they are still cached!

Cheers

Mark


[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux