Subject: Re: cloning the kernel - why long time in "Resolving 313037 deltas"

From: Shawn Pearce <[email-masked]>
Date: Tue, 19 Dec 2006 03:49:08 -0500

Marco Roeland <[email-masked]> wrote:
> On Tuesday December 19th 2006 at 03:32 Shawn Pearce wrote:
> 
> > > Anyway, try the pread() version first, see if that fixes the OS X problem.
> > 
> > It does.  Without pread() (aka stock 'next') it takes me over an
> > hour to index a pack of linux-2.6.  With pread() its 1m6s to run
> > index-pack on the same pack file.  The indexes are (of course)
> > identically produced.
> 
> I see the same here. From an (estimated) time of 37 minutes down to 52
> seconds with the pread() patch. Running the profiler (shark) on the old
> version showed that 85% of the time was spent in the Mac OS X mmap()
> system call.

More testing on Linux is probably needed, but if using pread()
on Linux is breakeven or slightly faster (as suggested by Johannes'
LilyPond test) this 60x performance improvement on initial clone
of largish projects on Mac OS X would be nice to have.

Not that I personally frequently clone large projects on Mac OS X.
But new users to Git might.  :-)

--