criterion: Robust, reliable performance measurement and analysis

[ benchmarking, bsd3, development, library, performance, program, testing ] [ Propose Tags ]

This library provides a powerful but simple way to measure software performance. It provides both a framework for executing and analysing benchmarks and a set of driver functions that makes it easy to build and run benchmarks, and to analyse their results.

The fastest way to get started is to read the online tutorial, followed by the documentation and examples in the Criterion.Main module.

For examples of the kinds of reports that criterion generates, see the home page.

[Skip to Readme]


Manual Flags


compile without optimizations


Embed the data files in the binary for a relocatable executable. (Warning: This will increase the executable size significantly.)


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


Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.1, 0.1.2, 0.1.3, 0.1.4, 0.2.0, 0.3.0, 0.4.0,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, (info)
Change log
Dependencies aeson (>=1 && <2.3), base (>=4.5 && <5), base-compat-batteries (>=0.10 && <0.14), binary (>=, binary-orphans (>=1.0.1 && <1.1), bytestring (>=0.9 && <1.0), cassava (>=, code-page, containers, criterion, criterion-measurement (>=0.2 && <0.3), deepseq (>=, directory, exceptions (>=0.8.2 && <0.11), fail (>=4.9 && <4.10), filepath, ghc-prim, Glob (>=0.7.2), js-chart (>=2.9.4 && <3), microstache (>=1.0.1 && <1.1), mtl (>=2), mwc-random (>=, optparse-applicative (>=0.18 && <0.19), parsec (>=3.1.0), prettyprinter (>=1.7 && <1.8), prettyprinter-ansi-terminal (>=1.1 && <1.2), semigroups, statistics (>=0.14 && <0.17), text (>=0.11), time, transformers, transformers-compat (>=0.6.4), vector (>=0.7.1), vector-algorithms (>=0.4) [details]
License BSD-3-Clause
Copyright 2009-2016 Bryan O'Sullivan and others
Author Bryan O'Sullivan <>
Maintainer Ryan Scott <>
Revised Revision 1 made by ryanglscott at 2023-06-27T23:09:10Z
Category Development, Performance, Testing, Benchmarking
Home page
Bug tracker
Source repo head: git clone
Uploaded by ryanglscott at 2023-05-23T23:07:17Z
Distributions Arch:, Debian:, Fedora:, FreeBSD:, LTSHaskell:, NixOS:, Stackage:, openSUSE:
Reverse Dependencies 28 direct, 3576 indirect [details]
Executables criterion-report
Downloads 121336 total (395 in the last 30 days)
Rating 2.75 (votes: 8) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2023-05-24 [all 1 reports]

Readme for criterion-

[back to package description]

Criterion: robust, reliable performance measurement

Hackage Build Status

This package provides the Criterion module, a Haskell library for measuring and analysing software performance.

To get started, read the online tutorial, and take a look at the programs in the examples directory.

Get involved!

Please report bugs via the github issue tracker.

Master github repository:

  • git clone


This library is written and maintained by Bryan O'Sullivan,