Asayomu Tech
注目★★★★★Hacker News

Bunのビルドを24分から15分へ、buildprofで遅延を可視化

30秒で把握

  • 1buildprofがLinuxビルドのプロセス木と実行時間を可視化
  • 2BunのZig版でFull LTOリンクが16分超を占有
  • 3ThinLTO適用で24分から15分へ短縮、単一モジュールの並列性が課題

要約

開発者は、Linux上のソフトウェアビルドをプロセス単位で追跡するOSSツール buildprof を公開した。buildprof は子プロセスを含む実行木を時系列に並べ、並列性不足、重複処理、依存関係の取得、巨大なcompiler/linker処理を可視化する。Bunの検証では、Zig版のビルドが24分かかる主因として、終盤に単独実行されるFull LTOリンクが16分超を占めることを特定した。BunとWebKitのLTOをThinLTOへ変更するとビルドは15分まで短縮したが、Rust版が90超のcrateへ処理を分散する一方、Zig版は単一モジュールに集約しており、並列化の差が残った。buildprof は Linux の任意のビルドコマンドに接頭辞を付けて実行できる。

あなたへの影響

Linuxでビルド時間の調査やCIの遅延分析を行うチームは、遅いビルドをbuildprofで記録し、linker・LTO・依存取得・並列化のどこがボトルネックかを確認するとよい。

推奨:ptraceを使うため、ファイルイベント追跡のオーバーヘッドが問題になる場合は--no-file-eventsでプロセス時系列に絞れる。

詳細を読む → 元記事へ※ 本文は元記事をご確認ください (asayomu は要約のみ提供)

関連する記事

※ 外部記事の権利は原著作者に帰属します。著作権削除要請は copyright@asayomu.jp までご連絡ください(受領確認 24h・実処理 72h 以内)。