當前位置:
首頁 > 科技 > SUSE 工程師提交用於優化 Linux 內核的 GCC LTO 補丁

SUSE 工程師提交用於優化 Linux 內核的 GCC LTO 補丁

出品|開源中國

從去年開始,當使用 LLVM 的 Clang 編譯器構建 Linux 內核時,已支持為內核構建啟用鏈接時優化 (LTO, link-time optimizations)。而對於使用 GCC 構建 Linux 內核,仍缺少 LTO 支持,近日發布的一系列補丁是實現此目標的最新嘗試。

Clang 的 LTO 支持在 Linux 5.16 中被合併,並一直保留至今。此舉除了提升構建性能,對於內核來說,還提供了基於 Clang 的 CFI 支持。

早在十年前,在 Clang 能夠構建 Linux 內核主線之前,已經有開發者為內核提交 GCC LTO 補丁,不過最終沒有被合併,原因是當時 GCC 的 LTO 支持不夠完善,未能說服 Linus。近年來,也有多家廠商發布了針對 Linux 內核的 LTO 補丁。隨著現代 GCC 編譯器(和 Clang)的發展,LTO 也逐漸變得更好,像 Fedora 在打包他們的發行版安裝包時都會默認使用 LTO,也有像 Clear Linux 這樣的公司通過使用 AutoFDO(基於程序性能分析工具的反饋式編譯優化)來進一步提升其發行版的性能。

來到 2022 年年底,SUSE 工程師 Jiri Slaby 提交了 GCC LTO 支持補丁,同時作為 「第一次徵求意見」,其部分內容是基於 Andi Kleen 先前的補丁以及 SUSE 工程師 Martin Liska 的工作。

雖然對編譯器的鏈接時進行優化通常會提升性能。但目前看來,針對 Linux 內核的 GCC LTO 支持,內核開發者測試後發現並沒有明顯變化。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 開源中國OSC 的精彩文章:

EasyList「癱瘓」,將被迫遷移
Go 語言已開源十三周年