Export to markdown
It is possible to export results from PkgBenchmark.BenchmarkResults and PkgBenchmark.BenchmarkJudgement using the function export_markdown
PkgBenchmark.export_markdown — Functionexport_markdown(file::String, results::BenchmarkResults)
export_markdown(io::IO, results::BenchmarkResults)
export_markdown(file::String, results::BenchmarkJudgement; export_invariants=false)
export_markdown(io::IO, results::BenchmarkJudgement; export_invariants=false)Writes the results to file or io in markdown format.
When exporting a BenchmarkJudgement, by default only the results corresponding to possible regressions or improvements will be included. To also export the invariant results, set export_invariants=true.
See also: BenchmarkResults, BenchmarkJudgement
Using Github.jl to upload the markdown to a Gist
Assuming that we have gotten a BenchmarkResults or BenchmarkJudgement from a benchmark, we can then use GitHub.jl to programmatically upload the exported markdown to a gist:
julia> using GitHub, JSON, PkgBenchmark
julia> results = benchmarkpkg("PkgBenchmark");
julia> gist_json = JSON.parse(
"""
{
"description": "A benchmark for PkgBenchmark",
"public": false,
"files": {
"benchmark.md": {
"content": "$(escape_string(sprint(export_markdown, results)))"
}
}
}
"""
)
julia> posted_gist = create_gist(params = gist_json);
julia> url = get(posted_gist.html_url)
URI(https://gist.github.com/317378b4fcf2fb4c5585b104c3b177a8)Consider using an extension to your browser to make the gist webpage use full width in order for the tables in the gist to render better, see e.g here.