Skip to content

Gradle Profiler (基准测试)

源:gradle-profiler GitHub

当你对团队说“开启配置缓存能快 5 秒”时,你需要证据。Gradle Profiler 是专门用于测量 Gradle 构建性能的官方工具。

1. 安装与运行

这是一个独立的二进制工具(通常通过 SDKMAN 或下载 Jar 运行)。

bash
gradle-profiler --benchmark --project-dir . assembleDebug

2. 为什么它比手动计时更准?

  1. 预热 (Warm-ups): 它会先运行几次不计时的构建,以消除 JVM 预热和文件缓存的影响。
  2. 多次迭代: 它会自动运行 10 次以上,并计算平均值、中位数和标准差。
  3. 多场景对比: 它可以同时对比“开启配置缓存”和“关闭配置缓存”的数据。

3. 结果分析

执行完成后,它会生成一份详尽的 HTML 报告。

性能指标

重点关注 Total Build Time (P95)。如果 P95 波动很大,说明你的构建逻辑中存在不稳定的网络请求或 IO 竞争。

4. 优化建议

使用 Profiler 验证你的每一次优化:

  • 升级 AGP 版本后的对比。
  • kapt 换成 KSP 后的对比。
  • 调整 org.gradle.jvmargs 后的对比。