Date: Mon, 02 Jul 2001 01:22:27 +0100 From: Ian Dowse <iedowse@maths.tcd.ie> To: freebsd-fs@freebsd.org Cc: mckusick@mckusick.com, dillon@freebsd.org Subject: Re: CFR: UFS directory hashing Message-ID: <200107020122.aa66571@salmon.maths.tcd.ie> In-Reply-To: Your message of "Tue, 19 Jun 2001 20:16:44 BST." <200106192016.aa70837@salmon.maths.tcd.ie>
next in thread | previous in thread | raw e-mail | index | archive | help
In message <200106192016.aa70837@salmon.maths.tcd.ie>, Ian Dowse writes: > >If there are no objections, I would like to commit the UFS_DIRHASH >patch in the next few days. The current patch is at A few issues cropped up, so I'm holding off committing this for a while. For two access patterns that are quite common, the use of UFS_DIRHASH caused a significant reduction in performance, so I'd like to address these before committing the patch. The first issue is the case of sequential lookups on all directory entries. This case is highly optimised in UFS, but the dirhash code did not treat it specially. I have added a simple optimisation for this case, but it needs a bit more work. Kirk McKusick ran some filesystem benchmark code with the dirhash code enabled. He found that if the dirhash memory limit was set too small relative to the working set of directories, dirhash would cause a significant performance reduction as compared with the non-dirhash case. I believe this is caused by a thrashing effect; if the hash structures are discarded after only a tiny number of accesses, then the hashing gains are lost by the increased cost of building the hashes. I think the situation here can be improved by using something better than LRU for recycling, and by waiting for a few accesses before going to the trouble of building the hash. Ian To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-fs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200107020122.aa66571>
