The NoSlow package
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
|Versions||0.1, 0.1.1, 0.2|
|Change log||None available|
|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]|
|Copyright||Roman Leshchinskiy 2009-10|
|Author||Roman Leshchinskiy <email@example.com>|
|Maintainer||Roman Leshchinskiy <firstname.lastname@example.org>|
|Uploaded||Mon Feb 15 11:48:07 UTC 2010 by RomanLeshchinskiy|
|Downloads||739 total (10 in last 30 days)|
|Status||Docs not available [build log]|
All reported builds failed as of 2015-12-08 [all 7 reports]
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
For package maintainers and hackage trustees