🛤️ Tracking: Periodic Perf Benchmarking #787
Labels
product: hc
Relates to the core "hc" binary
product: project
Relates to the project itself
product: website
Relates to the Hipcheck website
tracking-issue
This issue tracks a larger task.
type: enhancement
New feature or request
Similar to how Rust does it, we should have a page on our website that records and displays changes to the performance of Hipcheck over time, as the repository changes.
We should have an
xtask
calledbenchmark
that takes a config file of a list of targets and executeshc check
against them with benchmarking turned on. Usage:cargo xtask benchmark <CONFIG_FILE> [--out <OUT_FILE>]
, where--out
is optional. This will write a file tosite/static/perf/
with the name<TIMESTAMP>.csv
. The execution should record our internal benchmarking stats, as well as linux ram statistics like "max resident set size". Use this Rust benchmarking library as well.The config file should be a
.kdl
file, and target some basic repos as well as some of hipchecks own dependencies.benchmark
xtaskOnce we have this, we need a CI cron job action that will invoke the
benchmark
xtask once a week and create a PR requesting to merge the new file insite/static/perf
into main.Finally, we need to add a
<SITE>/perf
page to display the data in these .csv files./perf
page to site to display benchmark xtask outputThe text was updated successfully, but these errors were encountered: