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]
Versions [RSS] [faq] 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.1), ansi-wl-pprint (>=, base (>=4.5 && <5), base-compat-batteries (>=0.10 && <0.13), binary (>=, binary-orphans (>=1.0.1 && <1.1), bytestring (>=0.9 && <1.0), cassava (>=, code-page, containers, criterion, criterion-measurement (>= && <0.2), deepseq (>=, directory, exceptions (>=0.8.2 && <0.11), fail (==4.9.*), 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.13), parsec (>=3.1.0), semigroups, statistics (>=0.14 && <0.16), 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 <>
Category Development, Performance, Testing, Benchmarking
Home page
Bug tracker
Source repo head: git clone
Uploaded by ryanglscott at 2021-10-09T20:14:29Z
Distributions Arch:, Debian:, Fedora:, FreeBSD:, LTSHaskell:, NixOS:, Stackage:
Executables criterion-report
Downloads 104603 total (1208 in the last 30 days)
Rating 2.75 (votes: 7) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2021-10-09 [all 1 reports]


[Index] [Quick Jump]

Manual Flags


compile without optimizations


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

Automatic Flags

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


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.

Building and installing

To build and install criterion, just run

cabal install criterion

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,