From HaskellWiki
Revision as of 12:33, 26 January 2007 by Boegel (talk | contribs) (added YHC regression benchmark)
Jump to navigation Jump to search

Haskell Benchmark Suite

Recent discussions have illustrated the need for an up-to-date Haskell benchmark suite. The goal would be to package a number of representative benchmarks, written in Haskell, which users can run on their machine. Gathering (and publishing) performance numbers for these benchmarks on a number of different machines will hopefully help in guiding future development of both Haskell compilers and programs.


  • Kenneth Hoste - boegel on #haskell@FreeNode (ideas/advice/Wiki page maintainer)
  • Donald Bruce Stewart - dons on #haskell@FreeNode (darcs repo maintainer (probably))
  • Andy Georges - Itkovian on #haskell@FreeNode (measurements/analysis/advice)
  • John Meacam - JohnMeacam on #haskell@FreeNode (advice/JHC support)
  • Arthur van Leeuwen - earthy on #haskell@FreeNode (Computer Language Shootout man-on-the-insde)
  • Neil Mitchell - ndm on #haskell@FreeNode (suggestions/Yhc support/user)
  • <add your name here if you want to contribute!>


 * HaBench (intented to be the Haskell Benchmark Suite)
 * nofib/nofib 2.0 (follow-up of well-known nofib)


  • start from the (out-of-date?) nofib benchmark suite (GHC-only, includes ghcisms, but very usefull programs (gzip in pure Haskell, a whole strictness analysis pass of a compiler, quantum mechanics simulator and other _real_ stuff (JohnMeacam)) (website)
  • include Computer Language Shootout submissions (website)
  • YHC regressions suite (URL)
  • microbenchmarks for comparison with C (for example bytecopying) (dons)
  • both a Haskell98 and Haskell'-only (sub)suite (JohnMeacam)
  • multiple Haskell compilers (GHC, JHC, ...)
  • maintain benchmark according to Hackage (Hackage list)
  • Rename this project as nofib, otherwise it is like that people will have to run both this and nofib, because people will ask for the nofib results as well (ndm)
  • Libraries and tools in Haskell


Random notes are below.

  • (JohnMeacham) Insert non-formatted text here pretty much every compiler has a mode similar to 'ghc --make', so just let the user specify an arbitrary command line for the compiler to use, like 'jhc -v -flint $< -o $@' or 'ghc --make $< -o $@'

More info?


Comments? Feel free to add them! Suggestions? Mail Kenneth at kenneth [dot] hoste [at] elis [dot] ugent [dot] be .