Mercurial > repos > public > sbplib_julia
comparison benchmark/benchmark_utils.jl @ 1536:5193e6cd6c6a
Add optional name parameter for benchmark helper. Update benchmark manifest
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Thu, 11 Apr 2024 23:48:11 +0200 |
parents | 42738616422e |
children | 237b980ffb91 471a948cd2b2 |
comparison
equal
deleted
inserted
replaced
1528:d641798539c2 | 1536:5193e6cd6c6a |
---|---|
21 * If both `target` and `baseline` is set those revision are compared. | 21 * If both `target` and `baseline` is set those revision are compared. |
22 | 22 |
23 For control over what happens to the benchmark result datastructure see the | 23 For control over what happens to the benchmark result datastructure see the |
24 different methods of [`run_benchmark`](@ref) | 24 different methods of [`run_benchmark`](@ref) |
25 """ | 25 """ |
26 function main(;rev=nothing, target=nothing, baseline=nothing , kwargs...) | 26 function main(;rev=nothing, target=nothing, baseline=nothing, name=nothing, kwargs...) |
27 if !isnothing(rev) | 27 if !isnothing(rev) |
28 r = run_benchmark(rev; kwargs...) | 28 r = run_benchmark(rev; kwargs...) |
29 elseif !isnothing(baseline) | 29 elseif !isnothing(baseline) |
30 if isnothing(target) | 30 if isnothing(target) |
31 r = compare_benchmarks(baseline; kwargs...) | 31 r = compare_benchmarks(baseline; kwargs...) |
35 else | 35 else |
36 # Neither rev, or baseline were set => Run on current working directory. | 36 # Neither rev, or baseline were set => Run on current working directory. |
37 r = run_benchmark(;kwargs...) | 37 r = run_benchmark(;kwargs...) |
38 end | 38 end |
39 | 39 |
40 file_path = write_result_html(r) | 40 file_path = write_result_html(r; name) |
41 open_in_default_browser(file_path) | 41 open_in_default_browser(file_path) |
42 end | 42 end |
43 | 43 |
44 | 44 |
45 """ | 45 """ |
135 | 135 |
136 dt = Dates.format(PkgBenchmark.date(r), "yyyy-mm-dd HH:MM:SS") | 136 dt = Dates.format(PkgBenchmark.date(r), "yyyy-mm-dd HH:MM:SS") |
137 Mustache.render(io, template, Dict("title"=>dt, "content"=>content)) | 137 Mustache.render(io, template, Dict("title"=>dt, "content"=>content)) |
138 end | 138 end |
139 | 139 |
140 function write_result_html(r) | 140 function write_result_html(r; name=nothing) |
141 dt = Dates.format(PkgBenchmark.date(r), "yyyy-mm-dd HHMMSS") | 141 dt = Dates.format(PkgBenchmark.date(r), "yyyy-mm-dd HHMMSS") |
142 file_path = joinpath(results_dir, dt*".html") | 142 |
143 if isnothing(name) | |
144 file_path = joinpath(results_dir, dt*".html") | |
145 else | |
146 file_path = joinpath(results_dir, dt*" "*name*".html") | |
147 end | |
143 | 148 |
144 open(file_path, "w") do io | 149 open(file_path, "w") do io |
145 write_result_html(io, r) | 150 write_result_html(io, r) |
146 end | 151 end |
147 | 152 |