Linux 7.4 は、カーネルのコンパイル時間を短縮するために Kbuild 最適化パッチの組み込みを開始します

📅 2026-10-22

要約:

Linux 7.4 開発バージョンには、カーネル コンパイル プロセスにおけるシングル スレッドのボトルネックと反復作業を高速化するために、Kbuild 最適化の変更のバッチが組み込まれています。 Kbuild は Linux カーネルのビルド システムであり、構成、コンパイル、およびリンクの手順を整理する役割を果たします。関連する変更は、Arm エンジニアであり長年カーネル開発者である Lorenzo Stoakes によって提案されました。

image.webp

このラウンドに組み込まれた最適化には、カーネル イメージの .modinfo セクションの割り当てオーバーヘッドの削減、kallsyms シンボル テーブル生成の高速化、順序が無関係な場合の nm 出力ソートのスキップ、最終リンク ステージで必要な再配置情報のみの生成、C 言語での mksysmap の書き換え、結果をキャッシュするための一部のコンパイラおよびリンカー機能テストの Kconfig ステージへの移動などが含まれます。さらに、システムに pigz がインストールされている場合は、gzip 圧縮を高速化するために最初に使用されます。上記の調整により、中間データ処理、繰り返しのプローブおよびシリアル化ステップがそれぞれ削減されます。

パッチ シリーズ全体の初期テストでは、すべてのモジュールを有効にしたビルドは約 36%、増分コンパイルは約 70%、実際のリビルドを行わない no-op ビルドは最大約 90% 高速であることが示されています。次に、Phoronix は、デュアル ソケット AMD EPYC 9575F サーバーと Ubuntu 26.04 LTS で v4 パッチのフルセットをテストしました。クリーンな x86_64 defconfig カーネル ビルドは約 22 秒から 15 ~ 17 秒に短縮され、allmodconfig ビルドは 30 秒以上短縮されました。ただし、これらの数値はパッチのセット全体をテストします。 Linux 7.4 には現在、一連の変更のみが組み込まれています。実際の利点は、評価する前にさらに多くのパッチが組み込まれるまで待つ必要があります。

この最適化作業も AI ツールに依存しています。 Stoakes 氏は、建設のボトルネックを特定し、改善策を検討するために大規模な言語モデルを使用したが、モデルによって生成されたコードの一部は低品質であったと述べました。彼は大量のコードを個人的にレビューして書き直し、ビルド結果、実行中のカーネル、パフォーマンスの変化を手動で検証しました。

関連タグ

関連記事

コメント

0/500
Captcha (click to refresh)
コメントなし