Re: [patch] git svn slowness on win32
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Feb 16, 2010, 10:34 UTC
- Message-ID
- <alpine.DEB.1.00.1002161130590.20986@pacific.mpi-cbg.de>
- In-Reply-To
- <13237f021002160204o3c8af7a6i3e7105bd6bc43fa3@mail.gmail.com>
Hi,
On Tue, 16 Feb 2010, josh robb wrote:
Show 29 quoted lines
> I'm using git svn (1.6.4.msysgit.0) within a WindowsXP VM running > under VMWare fusion on OSX 10.5. For me (and at least one other person > I know) git svn has been unbearably slow. > > My profiling shows that almost all of the git-svn runtime is being > spent in DynaLoader (via SVN::Base::import) which I guess is slow in a > virtualized windows environment. For example: > > $ time perl /libexec/git-core/git-svn rebase > Current branch master is up to date. > > real 2m56.750s > user 0m3.129s > sys 2m39.232s > > I've been able to make significant (an order of magnitude) > improvements to it's performance by delaying SVN::Base::import from > running until it's actually needed. After making this change: > > $ time perl /libexec/git-core/git-svn rebase > Current branch master is up to date. > > real 0m33.407s > user 0m1.409s > sys 0m23.054s > > git svn rebase -n goes from 3m7.046s to 0m10.312s. > > Would love to get some feedback/thoughts etc...
How about the following commit message (trying to follow http://repo.or.cz/w/git.git?a=blob;f=Documentation/SubmittingPatches;hb=HEAD):
-- snip -- git svn: delay importing SVN::Base until it is needed
Importing functions from a .dll into Git for Windows' perl is pretty slow, so let's avoid importing if it is not necessary.
[... timing statistics here...]
Signed-off-by: Josh Robb <josh_robb@fastmail.fm> -- snap --
Hmm?
Ciao, Dscho