早在 6 月,Linux 内核就围绕在Linux 内核上使用 -O3 编译器优化进行了讨论,其中存在“CC_OPTIMIZE_FOR_PERFORMANCE_O3”Kconfig 开关,该开关为内核构建设置“-O3”编译器标志,但仅限于 ARC CPU 架构。有人提议扩展该选项,以便内核的任何 CPU 架构都可以轻松使用,同时明确将其标记为实验性的。
从那次讨论中,Linus Torvalds曾经反对 -O3 优化内核由于编译器优化引入的难以诊断/重现错误的可能性。其他上游内核开发人员也批评说,由于存在风险,比默认 -O2 级别更高的优化级别,特别是在 -O3 往往有更多错误的时候,使用较旧的编译器和内存。 此外,当可以通过设置“ KCFLAGS=-O3
”来实现相同的应用程序时,确实不需要这个专用的 Kconfig 开关。 所以现在随着 Linux 6.0 的Kbuild 更新,CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3 被完全删除。
那些希望更好地优化内核以提高性能的人仍然可以使用“KCFLAGS=-O3”
原创文章,作者:校长,如若转载,请注明出处:https://www.yundongfang.com/Yun179690.html