From: Jens Lehmann <Jens.Lehmann@web.de>
To: git@vger.kernel.org
Cc: Jens Lehmann <Jens.Lehmann@web.de>,
Junio C Hamano <gitster@pobox.com>, Jeff King <peff@peff.net>,
git-dev@github.com, Martin Fick <mfick@codeaurora.org>
Subject: Re: [PATCH] fetch: avoid quadratic loop checking for updated submodules
Date: Wed, 14 Sep 2011 20:26:05 +0200 [thread overview]
Message-ID: <4E70F1BD.70804@web.de> (raw)
In-Reply-To: <4E6FB05C.6010202@web.de>
Am 13.09.2011 21:34, schrieb Jens Lehmann:
> Am 12.09.2011 22:21, schrieb Junio C Hamano:
>> Jeff King <peff@peff.net> writes:
>>
>>> Instead, this patch structures the code like this:
>>
>> Yup, I agree that's the right way to do the other half of the issue.
>
> Ack from me too! I tested it on the repo with 3k refs and the time went
> down from 142s to 1s (when applied to 3793ac56b4, as later versions of
> master contain my other half which would skip Peff's code).
>
> On current master including my other half this takes 0.90s, while running
> with Peff's code on top of 3793ac56b4 it takes .96s. That is 6 hundreds
> of a second (7%) extra for not having to worry if one must run "git fetch
> --recurse-submodules" or not.
Just for the record: Martin Fick was so kind to run Peff's fix (without my
half) on his 100k refs repo that showed this regression. Here are the results
of some test runs:
1.7.7.rc0.189.gab72a
10m8.133s 9m7.971s 8m16.600s 13m57.821s
8m34.974s 8m41.527s
1.7.7.rc0.189.gab72a --no-recurse-submodules
10m43.833s 7m41.283s 8m17.889s 8m4.549s
8m12.668s 7m59.180s
The fastest runs are 8% apart, which is pretty much the same slowdown as in
the 3k ref repo. Looks like we do have O(n) now :-)
next prev parent reply other threads:[~2011-09-14 18:26 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-12 19:56 [PATCH] fetch: avoid quadratic loop checking for updated submodules Jeff King
2011-09-12 20:21 ` Junio C Hamano
2011-09-13 19:34 ` Jens Lehmann
2011-09-14 18:26 ` Jens Lehmann [this message]
2011-09-12 21:25 ` Junio C Hamano
2011-09-12 22:49 ` Jeff King
2011-09-12 23:06 ` Junio C Hamano
2011-09-12 23:25 ` Jeff King
2011-09-12 23:33 ` Junio C Hamano
2011-09-13 19:13 ` Jens Lehmann
2011-09-13 22:17 ` Jeff King
2011-09-14 13:20 ` Marc Branchaud
2011-09-14 18:27 ` Jens Lehmann
2011-09-14 18:29 ` Jeff King
2011-09-13 16:40 ` Christian Couder
2011-09-13 17:15 ` Jeff King
2011-09-13 17:34 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E70F1BD.70804@web.de \
--to=jens.lehmann@web.de \
--cc=git-dev@github.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=mfick@codeaurora.org \
--cc=peff@peff.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.