[Haskell-cafe] Re: [darcs-devel] announcing darcs 2.0.0pre2

David Roundy droundy at darcs.net
Wed Jan 16 16:14:22 EST 2008

On Thu, Jan 03, 2008 at 11:11:40AM +0000, Simon Marlow wrote:
> > Anyhow, could you retry this test with the above change in methodology,
> > and let me know if (a) the pull is still slow the first time and (b) if
> > it's much faster the second time (after the reverse unpull/pull)?
> I think I've done it in both directions now, and it got faster, but still 
> much slower than darcs1:
> $ time darcs2 unpull --from-tag 2007-09-25 -a
> Finished unpulling.
> 58.68s real   50.64s user   6.36s system   97% darcs2 unpull --from-tag 
> 2007-09-25 -a
> $ time darcs2 pull -a ../ghc-darcs2
> Pulling from "../ghc-darcs2"...
> Finished pulling and applying.
> 53.28s real   44.62s user   7.10s system   97% darcs2 pull -a ../ghc-darcs2
> This is still an order of magnitude slower than darcs1 for the same 
> operation.  (these times are now on the local filesystem, BTW)

I've recently found the problem leading to this slowdown (I believe) and
get about an order-of-magnitude improvement in the speed of a pull of 400
patches in the ghc repository.  It turned out to be an issue that scaled
with the size (width) of the repository, not with the number of patches
(which had been the obvious suspect), which was causing trouble when
applying to the pristine cache.

At this point, darcs-2 outperforms darcs-1 on most tests that I've tried,
so it'd be a good time to find some more performance problems, if you
can... and I don't doubt that there are more out there.
David Roundy
Department of Physics
Oregon State University

More information about the Haskell-Cafe mailing list