buildbox-1.5.1.1: Rehackable components for writing buildbots and test harnesses.

BuildBox.Benchmark

Synopsis

Documentation

data Benchmark Source

Describes a benchmark that we can run.

Constructors

Benchmark 

Fields

benchmarkName :: String

A unique name for the benchmark.

benchmarkSetup :: Build ()

Setup command to run before the main benchmark.

benchmarkCommand :: Build [WithUnits (Aspect Single)]

The benchmark command to run. The time taken to run this part is automatically measured and added to the overall results.

benchmarkCheck :: Build [WithUnits (Aspect Single)]

Check / cleanup command to run after the main benchmark.

runTimedCommand :: Build a -> Build (NominalDiffTime, a)Source

Run a command, returning its elapsed time.

runBenchmarkOnceSource

Arguments

:: Integer

Iteration number to tag results with.

-> Benchmark

Benchmark to run.

-> Build (BenchRunResult Single) 

Run a benchmark once.

outRunBenchmarkOnceSource

Arguments

:: Integer

Iteration number to tag results with

-> Benchmark

Benchmark to run.

-> Build (BenchRunResult Single) 

Run a benchmark once, logging activity and timings to the console.

outRunBenchmarkWithSource

Arguments

:: Int

Number of times to run each benchmark to get averages.

-> [BenchResult Stats]

List of prior results.

-> Benchmark

The benchmark to run.

-> Build (BenchResult Single) 

Run a benchmark serveral times, logging activity to the console. Also lookup prior results and print comparisons during the run.