皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

Torvalds 继续反对在编译 Linux 内核时使用 -O3 优化标志

Torvalds 继续反对在编译 Linux 内核时使用 -O3 优化标志

由于 GCC 的较旧版本可能会在 -O3 编译器优化级别下产生坏的代码,而且有时没有性能上的好处,Linus Torvalds 仍然反对在编译 Linux 内核时使用这种优化标志。Torvalds 总结了他目前对 -O3 的看法:“它在历史上一直有可怕的错误。它已经变好了,但‘变好’并不是一个很高的标准。”WireGuard 项目从开始就一直用 -O3 优化级别构建,也并没有看到因此而产生不良代码的情况,但由于 Torvalds 的指导意见,该项目放弃了这个选项。除了 WireGuard 之外,LZ4 和 Zstd 是仍然在用 -O3 的内核模块。

一方面很多厂商转向使用新版本的编译器非常缓慢,另外一方面一些没有那么严谨的代码也并不适合更高级别的优化。理想化的优化措施,在现实情况中往往不能采用。

节选自 https://linux.cn/article-13465-1.html