View Source Benchee.Benchmark.Runner (Benchee v1.3.0)

Internal module "running" a scenario, measuring all defined measurements.

Summary

Functions

Takes one measure with the given collector.

Executes the benchmarks defined before by first running the defined functions for warmup time without gathering results and them running them for time gathering their run times.

Functions

Link to this function

collect(scenario, scenario_context, collector)

View Source

Takes one measure with the given collector.

Correctly dispatches based on the number of iterations to perform.

Link to this function

main_function(function, input)

View Source
Link to this function

measure_and_report_function_call_overhead(prtiner)

View Source
Link to this function

run_scenarios(scenarios, scenario_context)

View Source

Executes the benchmarks defined before by first running the defined functions for warmup time without gathering results and them running them for time gathering their run times.

This means the total run time of a single benchmarking scenario is warmup + time.

Warmup is usually important for run times with JIT but it seems to have some effect on the BEAM as well.

There will be parallel processes spawned executing the benchmark job in parallel.