From: Jeff King <peff@peff.net>
To: Elijah Newren <newren@gmail.com>
Cc: Derrick Stolee <stolee@gmail.com>,
Junio C Hamano <gitster@pobox.com>,
Git Mailing List <git@vger.kernel.org>
Subject: Re: [ANNOUNCE] Git v2.24.0-rc0
Date: Tue, 22 Oct 2019 02:42:52 -0400 [thread overview]
Message-ID: <20191022064252.GA11308@sigill.intra.peff.net> (raw)
In-Reply-To: <CABPp-BG0Vrdo_w-e270oauLwHoLyaiTHKpfOwgLNBoeikoqq-g@mail.gmail.com>
On Mon, Oct 21, 2019 at 04:04:22PM -0700, Elijah Newren wrote:
> > 4211.3: git log --follow [...]8.56(8.41+0.15) -0.2% 3.67(3.53+0.13) -57.2%
>
> Many nice speedups here, not just commit-graph (the rev-list cases)
> but also log -L (from sg/line-log-tree-diff-optim, I believe), and log
> --follow. I'm curious if the log --follow speedup comes from sg's
> series or something else...
The "log --follow" speedup comes from turning on commit-graphs. You can
see a similar effect without "--follow", since "git log <path>" is going
to be dominated by the commit traversal, and not accessing the trees
(especially if <path> is at the top-level).
> > 0001.9: rev-list --objects $commit --not --all 0.08(0.05+0.03) 0.08(0.05+0.03) +0.0% 0.09(0.07+0.02) +12.5%
>
> Looks like this one increased too, with a similar magnitude to the
> 7300.2 you pointed out. But the base is kinda small; is this just
> noise?
Probably. I also frequently run the perf suite between major version
releases, and this kind of noise is quite common.
> I'm also curious what change it was that made these rebase tests faster.
Perf changes of this magnitude are usually pretty easy to bisect. You
can even do:
git bisect start --term-old=slow --term-new=fast
so you don't have to confuse yourself with opposite good/bad markers.
I just ran:
make && (cd t/perf && GIT_SKIP_TESTS=p3400.[3456] ./p3400*)
at each stopping point and eyeballed the resulting time (which for some
reason seems to be about 10x faster than Stolee's machine, but does
still show the same relative speedup). I was surprised that this also
yields 31b1de6a09 (commit-graph: turn on commit-graph by default,
2019-08-13). I wouldn't have expected commit access to dominate the
rebase time so much.
-Peff
next prev parent reply other threads:[~2019-10-22 6:42 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-18 6:29 [ANNOUNCE] Git v2.24.0-rc0 Junio C Hamano
2019-10-21 20:48 ` Derrick Stolee
2019-10-21 23:04 ` Elijah Newren
2019-10-22 6:42 ` Jeff King [this message]
2019-10-21 22:05 ` Git for Windows v2.24.0-rc0, was " Johannes Schindelin
2019-10-22 14:50 ` [git-for-windows] " Philip Oakley
2019-10-24 23:08 ` Johannes Schindelin
2019-10-24 23:34 ` Jeff King
2019-10-25 8:18 ` Johannes Schindelin
2019-10-25 16:58 ` Jeff King
2019-10-24 18:24 ` Bryan Turner
2019-10-24 22:52 ` Johannes Schindelin
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=20191022064252.GA11308@sigill.intra.peff.net \
--to=peff@peff.net \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=newren@gmail.com \
--cc=stolee@gmail.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).