Announcement: Gipeda, the git performance dashboard

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@joachim-breitner.de • http://www.joachim-breitner.de/ Jabber: nomeata@joachim-breitner.de • GPG-Key: 0xF0FBF51F Debian Developer: nomeata@debian.org
participants (1)
-
Joachim Breitner