编译器的编译会影响编译后的程序吗?

问题描述 投票:0回答:3

可能我的问题听起来很奇怪,但我的观点是:我必须使用 GCC 编译一个程序,如果我从源代码编译 GCC,我会在使用全新 GCC 编译的软件的性能方面获得轻微优势?我应该期待什么?

linux gcc compiler-optimization
3个回答
5
投票
  1. 您不会从使用优化标志构建的编译器中获得任何更快的程序。由于程序是编译器的输出,并且优化不会改变正确程序的输出,因此程序保持不变。
  2. 但是,如果您的经销商提供了不完整的编译器,您可能会从新的可用选项中受益。查看 GCC 手册,了解您想要启用的任何选项(例如某些目标架构变体),如果您无法在当前的编译器版本中启用它们,那么定制编译器可能会有潜力。然而,它不太可能值得

1
投票

除非您正在构建较新版本的 gcc,或启用 cloog、graphite 等。


0
投票

性能差异通常没有什么或可以忽略不计。

在非常罕见、非常非常罕见的情况下,您可以看到明显的差异,但并不总是性能改进。退化也是可能的。

© www.soinside.com 2019 - 2024. All rights reserved.