Comparing commits
You can use judge
to compare benchmark results of two versions of the package.
BenchmarkTools.judge
— Functionjudge(pkg::Union{Module, String},
[target]::Union{String, BenchmarkConfig},
baseline::Union{String, BenchmarkConfig};
kwargs...)
Arguments:
pkg
- Package to benchmark. Either a package module, name, or directory.target
- What do judge, given as a git id or aBenchmarkConfig
. If skipped, use the current state of the package repo.baseline
- The commit /BenchmarkConfig
to comparetarget
against.
Keyword arguments:
f
- Estimator function to use in the judging.judgekwargs::Dict{Symbol, Any}
- keyword arguments to pass to thejudge
function in BenchmarkTools
The remaining keyword arguments are passed to benchmarkpkg
Return value:
Returns a BenchmarkJudgement
judge(target::BenchmarkResults, baseline::BenchmarkResults, f;
judgekwargs = Dict())
Judges the two BenchmarkResults
in target
and baseline
using the function f
.
Return value
Returns a BenchmarkJudgement
which returns a BenchmarkJudgement
PkgBenchmark.BenchmarkJudgement
— TypeStores the results from running a judgement, see judge
.
The following (unexported) methods are defined on a BenchmarkJudgement
(written below as judgement
):
target_result(judgement)::BenchmarkResults
- theBenchmarkResults
of thetarget
.baseline_result(judgement)::BenchmarkResults
- theBenchmarkResults
of thebaseline
.benchmarkgroup(judgement)::BenchmarkGroup
- aBenchmarkGroup
containing the estimated results
A BenchmarkJudgement
can be exported to markdown using the function export_markdown
.
See also BenchmarkResults