This PR adds a new [radar]-based [temci]-less bench suite that replaces the `stdlib` benchmarks from the old suite and also measures per-module instruction counts. All other benchmarks from the old suite are unaffected. The readme at `tests/bench-radar/README.md` explains in more detail how the bench suite is structured and how it works. The readmes in the benchmark subdirectories explain what each benchmark does and which metrics it collects. All metrics except `stdlib//max dynamic symbols` were ported to the new suite, though most have been renamed. [radar]: https://github.com/leanprover/radar [temci]: https://github.com/parttimenerd/temci
1 KiB
1 KiB
The size benchmark
This benchmark measures the number and size of a few kinds of files.
It expects to be executed after the stdlib benchmark.
The following general metrics are collected:
size/libleanshared.so//bytes
The following metrics are collected for the entirety of stdlib:
size/stdlib/.c//filessize/stdlib/.c//linessize/stdlib/.cpp//filessize/stdlib/.cpp//linessize/stdlib/.lean//filessize/stdlib/.lean//linessize/stdlib/.ilean//filessize/stdlib/.ilean//bytessize/stdlib/.olean//filessize/stdlib/.olean//bytessize/stdlib/.olean.server//filessize/stdlib/.olean.server//bytessize/stdlib/.olean.private//filessize/stdlib/.olean.private//bytessize/stdlib/.ir//filessize/stdlib/.ir//bytes
The following metrics are collected only for the Init library.
size/init/.olean//filessize/init/.olean//bytessize/init/.olean.server//filessize/init/.olean.server//bytessize/init/.olean.private//filessize/init/.olean.private//bytes