Re: How git affects kernel.org performance
From: Nigel Cunningham <hidden>
Date: 2007-01-10 03:20:53
Also in:
linux-ext4, lkml
Hi. On Wed, 2007-01-10 at 09:57 +0800, Fengguang Wu wrote:
On Tue, Jan 09, 2007 at 08:23:32AM -0800, Linus Torvalds wrote:quoted
On Tue, 9 Jan 2007, Fengguang Wu wrote:quoted
quoted
The fastest and probably most important thing to add is some readahead smarts to directories --- both to the htree and non-htree cases. IfHere's is a quick hack to practice the directory readahead idea. Comments are welcome, it's a freshman's work :)Well, I'd probably have done it differently, but more important is whether this actually makes a difference performance-wise. Have you benchmarked it at all?Yes, a trivial test shows a marginal improvement, on a minimal debian system: # find / | wc -l 13641 # time find / > /dev/null real 0m10.000s user 0m0.210s sys 0m4.370s # time find / > /dev/null real 0m9.890s user 0m0.160s sys 0m3.270squoted
Doing an echo 3 > /proc/sys/vm/drop_caches is your friend for testing things like this, to force cold-cache behaviour..Thanks, I'll work out numbers on large/concurrent dir accesses soon.
I gave it a try, and I'm afraid the results weren't pretty. I did: time find /usr/src | wc -l on current git with (3 times) and without (5 times) the patch, and got with: real 54.306, 54.327, 53.742s usr 0.324, 0.284, 0.234s sys 2.432, 2.484, 2.592s without: real 24.413, 24.616, 24.080s usr 0.208, 0.316, 0.312s sys: 2.496, 2.440, 2.540s Subsequent runs without dropping caches did give a significant improvement in both cases (1.821/.188/1.632 is one result I wrote with the patch applied). Regards, Nigel