David.Collier-Brown at canada.sun.com
Thu Oct 12 19:57:35 GMT 2000
Michael Tokarev wrote:
> BTW, but is the OS filesystem cache was introduced for this!?
> I see that all unices around me (linux, solaris, sco) have very
> intelligent fs cache, that can work far better than samba implementation.
> For our site, I see disk access only when the first client accesses
> the directory, subcequent accesses takes results from fs cache
> (for all other clients also) -- there is no disk activity there.
> If samba will have its own cache implementation, then on this system
> this actually will _decrease_ performance, will require more additional
> resources (notably RAM) and decrease stability. I recall that kernel
> know far more information about filesystem than samba can have, and
> kernel knows also available RAM size that can be used for caches,
> and it keeps cache only once while samba will keep it in each smbd
That particular cache doesn't have behavioral
knowledge about the usage pattern, and has to
be pretty general. This causes me annoyance,
as I expect far faster directory searches than
I get, even when the directory blocks are all
in core and most of the inodes are cached as well.
OS vendors do work on this (I'm happy to say
I benchmarked a Solaris 8 improvement in this
very area this spring), but some things are
appropriate to cache in applications which know
the usage pattern of their users.
As an example, we **don't** cache the stuff you
send to a client when they ask for a directory
traversal, and so have to pull it back from the OS
even though we know the application is going to
(stupidly) ask for it again!
Some careful groveling over the requests sent
by Windows Explorer may well point to places where
both we and Microsoft can improve things.
David Collier-Brown, | Always do right. This will gratify some people
185 Ellerslie Ave., | and astonish the rest. -- Mark Twain
Willowdale, Ontario | //www.oreilly.com/catalog/samba/author.html
Work: (905) 415-2849 Home: (416) 223-8968 Email: davecb at canada.sun.com
More information about the samba-technical