From: Jeff King <peff@peff.net>
To: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Cc: Elijah Newren <newren@gmail.com>,
Junio C Hamano <gitster@pobox.com>,
Git Mailing List <git@vger.kernel.org>,
Derrick Stolee <stolee@gmail.com>,
Phillip Wood <phillip.wood123@gmail.com>
Subject: Re: What's cooking in git.git (Jun 2021, #07; Wed, 30)
Date: Mon, 5 Jul 2021 08:02:06 -0400 [thread overview]
Message-ID: <YOL0voZhJolF8Rg4@coredump.intra.peff.net> (raw)
In-Reply-To: <87czrx6v9w.fsf@evledraar.gmail.com>
On Mon, Jul 05, 2021 at 10:03:58AM +0200, Ævar Arnfjörð Bjarmason wrote:
> >> * ab/send-email-optim (2021-05-28) 13 commits
> >> - perl: nano-optimize by replacing Cwd::cwd() with Cwd::getcwd()
> >> - send-email: move trivial config handling to Perl
> >> - perl: lazily load some common Git.pm setup code
> >> - send-email: lazily load modules for a big speedup
> >> - send-email: get rid of indirect object syntax
> >> - send-email: use function syntax instead of barewords
> >> - send-email: lazily shell out to "git var"
> >> - send-email: lazily load config for a big speedup
> >> - send-email: copy "config_regxp" into git-send-email.perl
> >> - send-email: refactor sendemail.smtpencryption config parsing
> >> - send-email: remove non-working support for "sendemail.smtpssl"
> >> - send-email tests: test for boolean variables without a value
> >> - send-email tests: support GIT_TEST_PERL_FATAL_WARNINGS=true
> >>
> >> "git send-email" optimization.
> >>
> >> Will merge to 'next'.
> >
> > Wahoo!
>
> Do you find the faster t9001*.sh helps your overall test-run time?
It does for me. Running "make test" on 'next' (with -O2, and prove
--state=slow,save so it realizes t9001 is slow) takes 66 wallclock
seconds total. The top culprits are:
$ perl -MYAML -e '
$_ = do { local $/; <> };
# prove puts this non-YAML cruft at the end
s/\.\.\.$//s;
my $t = YAML::Load($_)->{tests};
print "$_->[1] $_->[0]\n" for
sort { $b->[1] <=> $a->[1] }
map { [$_, $t->{$_}->{elapsed}] }
keys(%$t);
' t/.prove | head
65.4168658256531 t9001-send-email.sh
40.6761560440063 t0027-auto-crlf.sh
26.0225791931152 t7610-mergetool.sh
24.0760719776154 t7112-reset-submodule.sh
23.5710120201111 t5572-pull-submodule.sh
23.2557609081268 t9500-gitweb-standalone-no-errors.sh
20.9747018814087 t1701-racy-split-index.sh
20.7937531471252 t7400-submodule-basic.sh
20.4510779380798 t5510-fetch.sh
20.0246639251709 t3305-notes-fanout.sh
Merging in ab/send-email-optim takes 60s, and yields:
39.4541878700256 t0027-auto-crlf.sh
27.2213349342346 t7610-mergetool.sh
26.2227098941803 t9001-send-email.sh
25.0272631645203 t5572-pull-submodule.sh
24.3502569198608 t7112-reset-submodule.sh
24.0568630695343 t9500-gitweb-standalone-no-errors.sh
22.3555839061737 t7400-submodule-basic.sh
21.2626190185547 t3305-notes-fanout.sh
21.1138088703156 t5510-fetch.sh
21.0040950775146 t1701-racy-split-index.sh
So we shaved 39s of CPU (albeit clocked-down-due-to-parallelism
seconds), and gained 6 wallclock seconds. Subsequent runs seem to shave
off a few more seconds even (presumably because the test-slowness
ordering is updated).
-Peff
next prev parent reply other threads:[~2021-07-05 12:02 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-30 22:55 What's cooking in git.git (Jun 2021, #07; Wed, 30) Junio C Hamano
2021-07-01 0:02 ` Felipe Contreras
[not found] ` <CAFQ2z_PYJMzOBcN+KoQSfdD-eYtZVzrArL0Dh-YW-q3R8hgm2w@mail.gmail.com>
2021-07-01 7:19 ` Han-Wen Nienhuys
2021-07-01 13:06 ` Ævar Arnfjörð Bjarmason
2021-07-01 13:42 ` Ævar Arnfjörð Bjarmason
2021-07-01 14:20 ` Jeff Hostetler
2021-07-01 14:00 ` Ævar Arnfjörð Bjarmason
2021-07-01 15:21 ` Junio C Hamano
2021-07-02 12:18 ` Ævar Arnfjörð Bjarmason
2021-07-02 16:05 ` Junio C Hamano
2021-07-01 16:51 ` Jeff King
2021-07-01 16:20 ` Jeff King
2021-07-03 5:04 ` Elijah Newren
2021-07-05 8:03 ` Ævar Arnfjörð Bjarmason
2021-07-05 12:02 ` Jeff King [this message]
2021-07-06 13:46 ` Phillip Wood
2021-07-06 19:29 ` Ævar Arnfjörð Bjarmason
2021-07-06 20:36 ` 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
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YOL0voZhJolF8Rg4@coredump.intra.peff.net \
--to=peff@peff.net \
--cc=avarab@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=newren@gmail.com \
--cc=phillip.wood123@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.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
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 read-only IMAP folder(s) and NNTP newsgroup(s).