perf 教程
本页向贡献者介绍如何用 moon bench 对 @mutable 内核进行基准测试,以及如何解读结果。方法见 perf 设计;完整流水线见 bench/README.md。
快速上手
moon bench -p perf --target native --release
输出的每一行对应一个用例,名为 <operation>/<case id>,并给出每次调用的时间。
日常任务
比较内核修改
- 在未修改的代码上运行基准测试,并保存输出。
- 应用修改,再次运行,比较相同用例名的结果。
- 用 perf_support 教程中的校验和比较方法,检查结果比特没有变化,或者只因舍入而变化。
运行完整报告
just bench
这会以 release 模式构建并运行基准测试,然后写出 bench/results/summary.md 和 summary.json,其中包含每个用例的中位数、p90 和 MAD。
进一步了解
用 BENCH_FLAGS="--include-rust" just bench 加入 Rust nalgebra 基线,用 just bench-web 打开本地仪表盘。
常见陷阱
- 对调试构建做基准测试。 务必传入
--release。 - 比较不同机器上的运行。 请在同一台机器、相近的负载下比较。
后续步骤
- perf_runner 教程:单个用例的原始样本。
- perf_support API。