[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.htmlhttps://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.dehttp://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