时间:2021-05-02
对于 GCC 编译器的替代者 Clang,Linux 或将在 2 月份 5.12 版本中支持其 LTO( link-time optimizations ) 功能。
这些补丁由谷歌软件工程师 Sami Tolvanen 提交,目前被分类为 for-next/kspp,大致分为两个系列(系列1,系列2),用户可以在 Kconfig 配置中选择是否开启 LTO。接下来如果没有出大问题,这些补丁可能会发送到 5.12 的合并窗口中。不过,这些补丁目前仅支持 arm64,对于 x86_64 的支持由于一些 objtool 的问题仍在等待中。
虽然使用 Clang LTO 可以得到最佳的运行时性能,但是构建时会占用大量时间和内存,因此该支持也包括 ThinLTO —— 仅仅进行有限的函数 importing 分析,与传统的构建方式占用内存和时间差不多。
此前,像谷歌这样的公司早已在其移动设备上的内核构建中使用 Clang LTO 并取得了不错的效果,微软也探索过使用 LTO + PGO 来给 Linux 内核提升性能。实际上,早在 2014 年,Intel 的开发人员就提交过 LTO 支持的补丁,不过当时 Linus Torvalds 并没有采纳。
如果这些提交最终被使用,那么一些相关的 "CONFIG_LTO" 配置也会给添加 GCC LTO 的支持打下基础,虽然此前 Intel 等公司也提过支持 GCC LTO,但从未被采纳。 同时,Clang 的CFI(Control-Flow Integrity)实现也能得以实施。
本文地址:https://www.oschina.net/news/126367/linux-5-12-maybe-support-lto
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
官方的C/C++插件是支持使用.clang-format配置文件进行自定义风格代码格式化的,无需另外安装clang-format插件。但是使用clang-for
在Linux内核5.12版本中,使用exFAT文件系统的用户,在删除带有“dirsync”安装选项集的大文件时,将大幅提高速度。exFA
根据邮件列表显示,Linux或将移除传统的IDE驱动支持。如果该提议按计划进行,从Linux5.13开始将不再有IDE驱动支持相关代码。事实上,两年前,这些传统
LinuxKernel5.12-rc1已于昨日发布,Linus本人在邮件中表示,5.12版本进行了大量的历史清理工作,比如删除了遗留的OPROFILE支持(用户
今天发布的Linux5.12-rc5对于现阶段的内核开发来说,内容是“多于平均水平”的,如果保持这样的状态很可能会导致在Linux5.1