Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

FreeBSD diskcache

15 views
Skip to first unread message

chrw

unread,
Jul 29, 1999, 3:00:00 AM7/29/99
to

Can someone enlightned me how the diskcache disk i/o performance is
achieved on freebsd? It seem, if one runs a find thru all the fs,
it will cache some, but not all of the fs. If one mounts
the fs with the asynch option, this was supposed to increase
performance/use of io disk cache. I tested this, and noticed no
difference, the disk cache appear to be of a fixed size, regardless
of available (free) memory, and regardless of a(sync) operations. Can
someone indepth explain this, in perspective of the linux way, with a
dynamic disk cache which inc/decreases the size of the diskcache this way
adapting to the current level of free memory, and this way enhancing
disk performance, and perhaps introducing problems regarding fs
corruption in a crash or heavy load situation (?).

Mvh/ Kind Regards,

CW

To Unsubscribe: send mail to majo...@FreeBSD.org
with "unsubscribe freebsd-isp" in the body of the message

David Greenman

unread,
Jul 29, 1999, 3:00:00 AM7/29/99
to
>Can someone enlightned me how the diskcache disk i/o performance is
>achieved on freebsd? It seem, if one runs a find thru all the fs,
>it will cache some, but not all of the fs. If one mounts
>the fs with the asynch option, this was supposed to increase
>performance/use of io disk cache. I tested this, and noticed no
>difference, the disk cache appear to be of a fixed size, regardless
>of available (free) memory, and regardless of a(sync) operations. Can
>someone indepth explain this, in perspective of the linux way, with a
>dynamic disk cache which inc/decreases the size of the diskcache this way
>adapting to the current level of free memory, and this way enhancing
>disk performance, and perhaps introducing problems regarding fs
>corruption in a crash or heavy load situation (?).

I think the best answer to this is that FreeBSD caches as much file data as
possible and uses otherwise free memory for this purpose. Our filesystem
buffer mechanism is very different from traditional Unix and serves only as
a temporary mapping mechanism for pages in the virtual memory system where
the file data is ultimately cached. The async option really has nothing to
do with any of this. It's purpose is to defer writing of certain filesystem
metadata (such as directories and inodes) so that the number of disk seeks
can be reduced.

-DG

David Greenman
Co-founder/Principal Architect, The FreeBSD Project - http://www.freebsd.org
Creator of high-performance Internet servers - http://www.terasolutions.com

0 new messages