[Haskell-cafe] Announcement: Gipeda, the git performance dashboard
Joachim Breitner
mail at joachim-breitner.de
Sun May 17 12:46:08 UTC 2015
Dear Haskellers,
a while ago, I set up a performance dashboard¹ for GHC, based on
codespeed², but I was dissatisfied, so in the end, I wrote a new one,
called
Gipeda
for “Git Performance Dashboard”. The git in the name as, in contrast to
codespeed, I do not try to be VCS-agnostic but do want to use and expose
the structure of your project’s git repository in the output.
You can have a look at http://perf.haskell.org/ghc. It should be
relatively self-explanatory. Just note that by default it hides boring
stuff (commits and results with no significant change), you can select
what to show in the top-right corner.
The idea behind gipeda is relatively simple. Starting with a directory
with one file for each of your project’s benchmarked commit, gipeda
digests this to produce a bunch of JSON files. It uses shake³ to avoid
unnecessary recalculations. A static HTML file with lots of JavaScript
(using handlebars as a templating engine, and other JS libraries like
jQuery and flot) then presents this data, in a hopefully snappy and
intuitive way.
I have announced the GHC instance on the ghc-dev mailing list⁴, so why
do I write here as well? Because you can use gipeda for your own
projects! And because you can contribute!
The program is not GHC-specific, so if you have a way to produce
benchmark numbers (or any other kind of metric) for your project, you
can feed them to gipeda to be visualized. See the README at
https://github.com/nomeata/gipeda for instructions (and ask me if you
are stuck). If it makes sense we can host the result at
http://perf.haskell.org/ (but you still need to run the benchmarks
yourself).
And although it is quite nice so far, there are a lot of things it
should also be able to do. Here are a few ideas:
* Integrate data from multiple build hosts.
* Compare the results from arbitrary two commits.
* Visualize non-linear git histories, e.g. due to branches.
* Know about named branches and tags.
* RSS feeds and email notifications.
* Find a way to efficiently run gipeda on travis.
* General UI polishing.
Some of that is possible without touching any JavaScript, some without
touching any Haskell, so if you want to contribute, I’m sure you’ll find
something.
I plan to work on that during ZuriHac⁵ (only two more weeks), so if you
are there and looking for a project, please join me!
Greetings,
Joachim
¹ http://ghcspeed-nomeata.rhcloud.com/
² https://github.com/tobami/codespeed
³ http://shakebuild.com/
⁴ https://mail.haskell.org/pipermail/ghc-devs/2015-May/009032.html
⁵ https://wiki.haskell.org/ZuriHac2015
PS: Thanks to davean from the haskell.org admin team for setting up
perf.haskell.org.
--
Joachim “nomeata” Breitner
mail at joachim-breitner.de • http://www.joachim-breitner.de/
Jabber: nomeata at joachim-breitner.de • GPG-Key: 0xF0FBF51F
Debian Developer: nomeata at debian.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20150517/aea95d85/attachment.sig>
More information about the Haskell-Cafe
mailing list