NoSlow: Microbenchmarks for various array libraries

[ bsd3, development, profiling, program ] [ Propose Tags ]

NoSlow is a benchmark suite for several Haskell array libraries: standard lists, primitive sequential arrays from the DPH project, uvector, vector (primitive, storable and boxed arrays) and storablevector. At the moment, it implements a bunch of fairly random loop micro-kernels and a couple of small array algorithms. It will include many more benchmarks in the future.

In its present state, NoSlow cannot be used to reliably compare the performance of the benchmarked libraries. It can be quite helpful for identifying cases where a closer inspection of the generated code might be warranted, however.

The package builds two binaries: noslow and noslow-table.

noslow -o log
runs the benchmarks and writes the results to log
noslow-table log -o table.html --html
outputs the results from log as a HTML table.
noslow-table log -o table.html --raw --csv
outputs the results from log as a CSV file suitable for importing into spreadsheets.
noslow-table --diff log1 log2 -o table.html@
produces a table comparing the results from log1 and log2 (2 means the first run was 2x slower than the second; 0.5 means 2x faster).
noslow-table --help
lists additional options.

NoSlow is described in more detail here: http://unlines.wordpress.com/2009/11/27/noslow/.

Changes since version 0.1

  • Renamed and reorganised loop kernels

  • Several small array algorithms organised in the new benchmark category mini

  • More reliable benchmark execution

  • Support for producing CSV files

Flags

Automatic Flags
NameDescriptionDefault
dph-prim-seqEnabled
vectorEnabled
uvectorEnabled
storablevectorEnabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1, 0.1.1, 0.2
Dependencies array, base (>=3 && <5), containers, criterion (>=0.4 && <0.5), dph-base, dph-prim-seq, statistics (>=0.3.5 && <4), storablevector (>=0.2), template-haskell, uvector (>=0.1), vector (>=0.5) [details]
License BSD-3-Clause
Copyright Roman Leshchinskiy 2009-10
Author Roman Leshchinskiy <rl@cse.unsw.edu.au>
Maintainer Roman Leshchinskiy <rl@cse.unsw.edu.au>
Category Development, Profiling
Home page http://code.haskell.org/NoSlow
Uploaded by RomanLeshchinskiy at 2010-02-15T11:48:07Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Executables noslow-table, noslow
Downloads 2899 total (10 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-10-25 [all 10 reports]