Re: git performance
- From
Andreas Ericsson <ae@op5.se>
- Date
- Oct 23, 2008, 07:43 UTC
- Message-ID
- <49002B27.50201@op5.se>
- In-Reply-To
- <m3d4hsi708.fsf@localhost.localdomain>
Jakub Narebski wrote:
Show 25 quoted lines
> "Edward Ned Harvey" <git@nedharvey.com> writes: > >> I see things all over the Internet saying git is fast. I'm >> currently struggling with poor svn performance and poor attitude of >> svn developers, so I'd like to consider switching to git. A quick >> question first. >> >> The core of the performance problem I'm facing is the need to "walk >> the tree" for many thousand files. Every time I do "svn update" or >> "svn status" the svn client must stat every file to check for local >> modifications (a coffee cup or a beer worth of stats). In essence, >> this is unavoidable if there is no mechanism to constantly monitor >> filesystem activity during normal operations. Analogous to >> filesystem journaling. >> >> So - I didn't see anything out there saying "git is fast because it >> uses inotify" or anything like that. Perhaps git would not help me >> at all? Because git still needs to stat all the files in the tree? > > http://git.or.cz/gitwiki/GitBenchmarks > > While it should be possible to use 'assume unchanged' bit together > with inotify / icron, it is not something tha is done; IIRC Mercurial > had Linux-only InotifyPlugin... >
Well, inotify() is Linux specific, so it'd be quite hard to support on another platform. Emulating it with a billion stat() calls feels rather like a disk (and I/O performance) killer.
-- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231