From: Christian Couder <christian.couder@gmail.com>
To: git@vger.kernel.org
Cc: "Junio C Hamano" <gitster@pobox.com>, "Jeff King" <peff@peff.net>,
"Thomas Rast" <tr@thomasrast.ch>,
"Ævar Arnfjörð Bjarmason" <avarab@gmail.com>,
"Christian Couder" <chriscool@tuxfamily.org>
Subject: [PATCH 0/8] Codespeed perf results
Date: Wed, 13 Dec 2017 16:13:36 +0100 [thread overview]
Message-ID: <20171213151344.2138-1-chriscool@tuxfamily.org> (raw)
This patch series is built on top of cc/perf-run-config which recently
graduated to master.
It makes it possible to send perf results to a Codespeed server. See
https://github.com/tobami/codespeed/ and web sites like
http://speed.pypy.org/ which are using Codespeed.
The end goal would be to have such a server always available to track
how the different git commands perform over time on different kind of
repos (small, medium, large, ...) with different optimizations on and
off (split-index, libpcre2, BLK_SHA1, ...)
With this series and a config file like:
$ cat perf.conf
[perf]
dirsOrRevs = v2.12.0 v2.13.0
repeatCount = 10
sendToCodespeed = http://localhost:8000
repoName = Git repo
[perf "with libpcre"]
makeOpts = "DEVELOPER=1 USE_LIBPCRE=YesPlease"
[perf "without libpcre"]
makeOpts = "DEVELOPER=1"
One should be able to just launch:
$ ./run --config perf.conf p7810-grep.sh
and then get nice graphs in a Codespeed instance running on
http://localhost:8000.
Caveat
~~~~~~
For now one has to create the "Git repo" environment in the Codespeed
admin interface. (We send the perf.repoName config variable in the
"environment" Codespeed field.) This is because Codespeed requires the
environment fields to be created and does not provide a simple way to
create these fields programmatically.
I might try to work around this problem in the future.
Links
~~~~~
This patch series is available here:
https://github.com/chriscool/git/commits/codespeed
The cc/perf-run-config patch series was discussed here:
v1: https://public-inbox.org/git/20170713065050.19215-1-chriscool@tuxfamily.org/
v2: https://public-inbox.org/git/CAP8UFD2j-UFh+9awz91gtZ-jusq7EUOExMgURO59vpf29jXS4A@mail.gmail.com/
Christian Couder (8):
perf/aggregate: fix checking ENV{GIT_PERF_SUBSECTION}
perf/aggregate: refactor printing results
perf/aggregate: implement codespeed JSON output
perf/run: use $default_value instead of $4
perf/run: add conf_opts argument to get_var_from_env_or_config()
perf/run: learn about perf.codespeedOutput
perf/run: learn to send output to codespeed server
perf/run: read GIT_TEST_REPO_NAME from perf.repoName
t/perf/aggregate.perl | 164 +++++++++++++++++++++++++++++++++++---------------
t/perf/run | 29 +++++++--
2 files changed, 140 insertions(+), 53 deletions(-)
--
2.15.1.361.g8b07d831d0
next reply other threads:[~2017-12-13 15:13 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-13 15:13 Christian Couder [this message]
2017-12-13 15:13 ` [PATCH 1/8] perf/aggregate: fix checking ENV{GIT_PERF_SUBSECTION} Christian Couder
2017-12-13 15:13 ` [PATCH 2/8] perf/aggregate: refactor printing results Christian Couder
2017-12-13 15:13 ` [PATCH 3/8] perf/aggregate: implement codespeed JSON output Christian Couder
2017-12-13 18:25 ` Eric Sunshine
2017-12-14 8:47 ` Christian Couder
2017-12-13 20:33 ` Junio C Hamano
2017-12-14 8:57 ` Christian Couder
2017-12-14 17:31 ` Junio C Hamano
2017-12-13 15:13 ` [PATCH 4/8] perf/run: use $default_value instead of $4 Christian Couder
2017-12-13 20:40 ` Junio C Hamano
2017-12-13 20:54 ` Junio C Hamano
2017-12-14 9:00 ` Christian Couder
2017-12-14 8:59 ` Christian Couder
2017-12-13 15:13 ` [PATCH 5/8] perf/run: add conf_opts argument to get_var_from_env_or_config() Christian Couder
2017-12-13 15:13 ` [PATCH 6/8] perf/run: learn about perf.codespeedOutput Christian Couder
2017-12-13 15:13 ` [PATCH 7/8] perf/run: learn to send output to codespeed server Christian Couder
2017-12-13 15:13 ` [PATCH 8/8] perf/run: read GIT_TEST_REPO_NAME from perf.repoName Christian Couder
2017-12-13 16:02 ` [PATCH 0/8] Codespeed perf results Philip Oakley
2017-12-13 16:18 ` Christian Couder
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=20171213151344.2138-1-chriscool@tuxfamily.org \
--to=christian.couder@gmail.com \
--cc=avarab@gmail.com \
--cc=chriscool@tuxfamily.org \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=peff@peff.net \
--cc=tr@thomasrast.ch \
/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).