Hi all,
I've just uploaded the first release of Progression to Hackage.
Progression is a small library that pulls together several other
libraries and utilities (particularly Criterion) to support the
optimisation of Haskell programs.
To use it, you wrap up your benchmarks in a program that passes them to
Progression. When you run this program, Progression records the
benchmarks, and offers to draw you a graph comparing these latest times
to a selection (specified by you) of previously recorded times. What
you get is a graph that allows you to see if your changes have made
enough difference over your benchmarks for you to keep the change (or
whether it has made most of them worse, and you need to roll back!).
Progression doesn't include any benchmarking logic; it delegates all
that to the Criterion library, and plots the resulting mean (with
confidence intervals).
More details and an example graph are available in a blog post:
http://chplib.wordpress.com/2010/02/04/progression-supporting-optimisation-in-haskell/
Feedback is welcome, either here or in the comments on the blog post.
Thanks,
Neil.