ICC与GCC - 优化和CPU架构

Ray*_*yne 7 compiler-construction 64-bit x86 gcc icc

我很想知道GCC在优化级别和特定处理器架构方面与英特尔的ICC有何不同.我正在使用GCC 4.1.2 20070626和ICC v11.1 for Linux.

ICC的优化级别(O1到O3)与GCC有何不同,如果它们完全不同的话?

ICC能够专门迎合不同的架构(IA-32,intel64和IA-64).我已经读过GCC有-march编译器选项,我认为它类似,但我找不到要使用的选项列表.我使用的是64位的Intel Xeon X5570.我可以使用任何其他GCC编译器选项来满足64位Intel CPU的应用程序吗?

谢谢.

此致,Rayne

caf*_*caf 1

请参阅 GCC 手册ie386 和 x86-64 选项中的第 3.17.15 节,了解适用于这些体系结构的所有选项的完整列表和说明(IA-64 是 Itanium,您不太可能拥有其中之一)。

在这种情况下最重要的选项是:

  • -m64生成64位代码;
  • -march=为特定CPU类型生成指令;和
  • -mtune=调整特定 CPU 类型的代码。