In message <[EMAIL PROTECTED]>, Matt Dillon writes:
> Ah yes, vmiodirenable. We should just turn it on by default now. I've
> been waffling too long on that. With it off the buffer cache will
> remember at most vfs.maxmallocspace worth of directory data (read: not
> very much), and without VMIO backing, which means vnodes could be
> reclaimed immediately. Ah! Now I see why that clause was put
> in... but it's obsolete now if vmiodirenable is turned on, and it
> doesn't scale well to large-memory machines if it is left in.
>
> If we turn vmiodirenable on then directory blocks get cached by the
> VM system. There is no preferential treatment of directory blocks
> but there doesn't need to be, the VM system does a very good job figuring
> out which blocks to keep and which not to.
Well, benchmarks will show that. A directory page may hold the
access to hundred files so it should not be pushed out by one file.
I think getting directory pages VM cached is The Right Way for this,
because it means that also the not-earlier used filenames become
cheaply accessible.
Things to look out for:
1. !ufs filesystems
2. inode->vnode hash/search algorithms may become much more
important.
--
Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
[EMAIL PROTECTED] | TCP/IP since RFC 956
FreeBSD committer | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message