- module BuildBox.Benchmark.BenchResult
- data Benchmark = Benchmark {
- benchmarkName :: String
- benchmarkSetup :: Build ()
- benchmarkCommand :: Build [WithUnits (Aspect Single)]
- benchmarkCheck :: Build [WithUnits (Aspect Single)]
- runTimedCommand :: Build a -> Build (NominalDiffTime, a)
- runBenchmarkOnce :: Integer -> Benchmark -> Build (BenchRunResult Single)
- outRunBenchmarkOnce :: Integer -> Benchmark -> Build (BenchRunResult Single)
- outRunBenchmarkWith :: Int -> [BenchResult Stats] -> Benchmark -> Build (BenchResult Single)
Documentation
Describes a benchmark that we can run.
Benchmark | |
|
runTimedCommand :: Build a -> Build (NominalDiffTime, a)Source
Run a command, returning its elapsed time.
:: Integer | Iteration number to tag results with. |
-> Benchmark | Benchmark to run. |
-> Build (BenchRunResult Single) |
Run a benchmark once.
:: 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.
:: 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.