The NoSlow package

[Tags:bsd3, program]

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: <>.

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


Versions 0.1, 0.1.1, 0.2
Dependencies array, base (>=3 && <5), containers, criterion (==0.4.*), dph-base, dph-prim-seq, statistics (>=0.3.5 && <4), storablevector (>=0.2), template-haskell, uvector (>=0.1), vector (>=0.5) [details]
License BSD3
Copyright Roman Leshchinskiy 2009-10
Author Roman Leshchinskiy <>
Maintainer Roman Leshchinskiy <>
Category Development, Profiling
Home page
Uploaded Mon Feb 15 11:48:07 UTC 2010 by RomanLeshchinskiy
Distributions NixOS:0.2
Downloads 910 total (6 in the last 30 days)
0 []
Status Docs not available [build log]
All reported builds failed as of 2016-10-25 [all 10 reports]
Hackage Matrix CI



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


Maintainer's Corner

For package maintainers and hackage trustees