科技媒体 Phoronix 对使用“-O3 -march=native”构建的 Linux 5.19 内核进行了一场基准测试。测试环境如下:
测试结果表明,“-O3 -march=native”内核构建并没有产生明显更好的性能。事实是,当在 Ubuntu 22.04 LTS 上使用 GCC 11 构建时,它甚至在一些工作负载中都出现了倒退。
特别是"-O3 -march=native "内核在某些 I/O 工作负载上的表现,不仅比不上 -O3 内核构建,还要比 -O2 差。
从数据库工作负载到使用 FIO 的基本 I/O 基准测试,通常可以看到"-O3 -march=native"内核产生的结果要明显落后于不太积极的优化内核。
测试人员指出,测试结果基本上是一塌糊涂。在这台 Core i5 12600K 台式机上进行的几十项基准测试中,"-O3 -march=native"优化的内核并没有得到任何亮眼的成效。
想要深入了解完整测试数据的用户可以查看此结果页面。
总的来说,从几十项基准测试的几何平均值来看,"-O3 -march=native"内核实际上由于 I/O 基准测试的回归而略微慢了一些。因此,至少在这个特定的英特尔 Alder Lake 系统中,"-O3 -march=native"内核优化构建并不值得。