Benchee v0.1.0 Benchee
Top level module providing convenience access to needed functions as well
as the very high level Benchee.run
API.
Summary
Functions
Convenience access to Benchee.Benchmark.benchmark/3
to runs the given
benchmark for the configured time and returns a suite with the benchmarking
results added
Convenience access to Benchee.Config.init/1
to initialize the configuration
High level interface that runs the given benchmarks and prints the results on the console. It is given an optional config and an array of tuples of names and functions to benchmark. For configuration options see the documentation of Benchee.init/1
Convenience access to Benchee.Statistics.statistics/1
to generate
statistics
Functions
Convenience access to Benchee.Benchmark.benchmark/3
to runs the given
benchmark for the configured time and returns a suite with the benchmarking
results added.
Convenience access to Benchee.Config.init/1
to initialize the configuration.
Examples
iex> Benchee.init
%{config: %{time: 5_000_000}, jobs: []}
iex> Benchee.init %{time: 1}
%{config: %{time: 1_000_000}, jobs: []}
High level interface that runs the given benchmarks and prints the results on the console. It is given an optional config and an array of tuples of names and functions to benchmark. For configuration options see the documentation of Benchee.init/1.
Examples
Benchee.run(%{time: 3},
[{"My Benchmark", fn -> 1 + 1 end},
{"My other benchmrk", fn -> "1" ++ "1" end}])
# Prints a summary of the benchmark to the console
Convenience access to Benchee.Statistics.statistics/1
to generate
statistics.
Examples
iex> run_times = [200, 400, 400, 400, 500, 500, 700, 900]
iex> suite = %{jobs: [{"My Job", run_times}]}
iex> Benchee.Statistics.statistics(suite)
[{"My Job",
%{average: 500.0,
std_dev: 200.0,
std_dev_ratio: 0.4,
ips: 2000.0,
median: 450.0}}]