lean4-htt/tests/bench-radar/build
Garmelon 8447586fea
chore: make bench suite more similar to mathlib's (#12091)
The most important change is that all bench scripts now must always
output to `measurements.jsonl` instead of being allowed to output
results on stdout/err.
2026-01-22 14:20:10 +00:00
..
lakeprof_report_template.html
lakeprof_report_upload.py
lean_wrapper.py chore: make bench suite more similar to mathlib's (#12091) 2026-01-22 14:20:10 +00:00
README.md
run chore: make bench suite more similar to mathlib's (#12091) 2026-01-22 14:20:10 +00:00

The build benchmark

This benchmark executes a complete build of the stage3 stdlib and collects global and per-module metrics.

The following metrics are collected by a wrapper around the entire build process:

  • build//cycles
  • build//instructions
  • build//maxrss
  • build//task-clock
  • build//wall-clock

The following metrics are collected from leanc --profile and leanc --stat and summed across all modules:

  • build/profile/<name>//wall-clock
  • build/stat/<name>//amount
  • build/stat/<name>//bytes

The following metrics are collected from lakeprof report:

  • build/lakeprof/longest build path//wall-clock
  • build/lakeprof/longest rebuild path//wall-clock

The following metrics are collected individually for each module:

  • build/module/<name>//lines
  • build/module/<name>//cycles
  • build/module/<name>//instructions
  • build/module/<name>//bytes .ilean
  • build/module/<name>//bytes .olean
  • build/module/<name>//bytes .olean.server
  • build/module/<name>//bytes .olean.private

If the file build_upload_lakeprof_report is present in the repo root, the lakeprof report will be uploaded once the benchmark run concludes.