自去年以来,Canonical一直在研究使用-O3编译器优化来构建Ubuntu软件包,以便为Ubuntu Linux提供更好的性能。但几周前,他们决定不对所有软件包使用-O3优化。现在,他们提供了更多工程见解,以说明他们的理由以及对更多软件包使用-O3编译器优化的调查结果。
z.\\m;s >Di`zw~ 长话短说,对于发行版范围的-O3编译器优化,他们没有足够引人注目的性能优势来证明这种努力是合理的。他们还发现了一些性能倒退,并且-O3优化在某些情况下会对某些加载时间产生不利影响,并且会使二进制文件大小变大。
0)\(y 1:M'|uc 例如,他们发现GNU Radio的性能下降了12%,TIFF解压缩也倒退了近12%,使用-O3优化默认值后,所有Debian软件包的大小增加了约6%,桌面ISO的大小增加了近4%。
tn _\E/Q b "}ya/ 在Ubuntu Discourse上,他们总结了他们的发现并得出结论:
Oml3=TV 59:kL<;S- “整个发行版的O3似乎并没有提供更好的性能,并且在交互任务中会倒退。它最多会影响11.9%的加载时间,这对努力实现快速应用程序启动的容器工作负载是不利的。
dD'KP4Io@ $AvaOI.l 总体而言,这种倒退主要是由于可执行文件大小的增加造成的。此外,在某些情况下,-O3和链接时间优化结合在一起可能会导致过多的函数内联,进而导致性能倒退(可能是通过寄存器压力或指令缓存抖动)。
6Fk[wH7 /#"9!8%V 可以说,所有这些都符合传统观点:-O3在某些情况下可以提供帮助,但不是一个合理的默认值。但验证这一点肯定比仅仅依赖民间知识要好!此外,我们仍然希望研究更多方法来提高Ubuntu的性能,每次我们锻炼基准测试能力时,我们都会做得更好。”
N>sT@ >
) X|g5tnsj` 至少他们仍将探索选择性地为某些软件包启用-O3优化,以便获得合理的性能优势。
k\/es1jOEh
t1oTZ Ubuntu 25.04预计将于4月中旬发布,并且确实带来了一些其他性能优势,同时更多的性能测试正在进行中。
n>:e8KVM;