Hasty Briefsbeta

双语

I made a build visualizer to understand Bun's compile times

3 days ago
  • buildprof 是一个开源 Linux 工具,用于记录进程树并可视化构建时间线。
  • 它帮助分析了为什么 Bun 的 Zig 时代构建速度慢于 Rust 时代构建,原因是完全 LTO 和单一模块化。
  • 切换到 ThinLTO 并重建 WebKit 后,Zig 构建时间从 24 分钟减少到 15 分钟。
  • 剩余的性能差距是结构性的:Rust 将编译分散到超过 90 个 crate 中,而 Zig 使用单一模块。
  • buildprof 使用 ptrace 进行进程跟踪,使用 seccomp 进行文件 I/O 监控,且开销较低。
  • 用户界面是 Perfetto 的一个软分叉,提供可扩展的时间线和依赖箭头。