View Source Benchee.Benchmark (Benchee v1.3.0)

Functions related to building and running benchmarking scenarios. Exposes benchmark/4 and collect/3 functions.

Summary

Functions

Takes the current suite and adds a new benchmarking scenario (represented by a %Scenario{} struct) with the given name and function to the suite's scenarios. If there are inputs in the suite's config, a scenario will be added for the given function for each input.

Kicks off the benchmarking of all scenarios defined in the given suite.

Public access for the special key representing no input for a scenario.

Functions

Link to this function

benchmark(suite, job_name, to_be_benchmark, printer \\ Printer)

View Source

Takes the current suite and adds a new benchmarking scenario (represented by a %Scenario{} struct) with the given name and function to the suite's scenarios. If there are inputs in the suite's config, a scenario will be added for the given function for each input.

Link to this function

collect(suite, printer \\ Printer, runner \\ Runner)

View Source
@spec collect(Benchee.Suite.t(), module(), module()) :: Benchee.Suite.t()

Kicks off the benchmarking of all scenarios defined in the given suite.

Hence, this might take a while ;) Passes a list of scenarios and a scenario context to our benchmark runner. For more information on how benchmarks are actually run, see the Benchee.Benchmark.Runner code (API considered private).

Public access for the special key representing no input for a scenario.