英特尔凌动GCC的优化参数[关闭](GCC optimization flags for Intel

2019-06-25 13:34发布

我开发的英特尔Atom处理器性能的关键应用。

什么是此CPU最好的gcc的优化标志?

Answer 1:

GCC 4.5将包含-march =原子和-mtune =原子选项。

来源: http://gcc.gnu.org/gcc-4.5/changes.html



Answer 2:

有一个叫爽框架Acovea(通过进化算法编译器选项的分析) ,由斯科特·罗伯特·拉德,海湾合作委员会的黑客之一。 这是一个遗传/进化算法的框架,试图优化GCC优化标记通过自然选择的特定的一段代码。

它的工作原理是这样的:你写一小片的基准码(它真的必须是小的,因为它会被重新编译和执行数千次),表示要优化大程序的性能特点。 然后Acovea随机建一些几十种不同的GCC COMMANDLINES和编译和运行与他们每个人的标杆。 那么最好的这些COMMANDLINES被允许“龙虎斗”和“培育”新的“孩子”从他们的“父母”这(希望)继承了最好的“基因”。 这个过程重复了几十个“代”,直到一个稳定的一系列命令行标志的出现。



Answer 3:

我已经是自动选择相应的标志为你的CPU和编译器组合的脚本。 我刚刚更新,它支持英特尔凌动:

http://www.pixelbeat.org/scripts/gcccpuopt

更新:我以前指定-march =普雷斯科特Atom的,但看多进它表明,Atom是Merom处理器符合ISA,因此-march = core2的是比较合适的。 然而,需要注意的是原子在有序核心,最后这些是原始奔腾。 因此,它可能会更好-mtune =奔腾为好。 不幸的是我没有一个Atom测试。 我真的很感激,如果任何人都可以基准之间的差异:

-march=core2 -mfpmath=sse -O3
-march=core2 -mtune=pentium -mfpmath=sse -O3

更新:这里有几个低级别的优化Atom的不错的文章:

  • http://virtualdub.org/blog/pivot/entry.php?id=286
  • http://virtualdub.org/blog/pivot/entry.php?id=287


Answer 4:

好了,Gentoo的维基普雷斯科特指出:

http://en.gentoo-wiki.com/wiki/Safe_Cflags/Intel#Atom_N270

CHOST="i686-pc-linux-gnu"

CFLAGS = “ - 行军=普雷-O2 -pipe -fomit帧指针”

CXXFLAGS = “$ {CFLAGS}”



Answer 5:

从英特尔入门MID

当使用GCC编译,有几个建议使用的标志:

  • -O2或-O1:O2标志优化了速度,而-O1标志尺寸优化
  • -msse3
  • -march = core2的
  • -mfpmath = SSE


Answer 6:

就像奔腾4:

-march=prescott -O2 -pipe -fomit-frame-pointer


Answer 7:

我不知道如果GCC有任何具体的Atom处理器的优化参数还没有,但凌动核心应该是非常类似于原来的奔腾,用非常显著此外,MMX / SSE / SSE2 / SSE3 / SSSE3指令集。 当然,这些只会让你的代码是浮点DSP或重一个显著差异。

也许你可以试试:

GCC -O2 -march =奔腾-mmmx -msse -msse2 -msse3 -mssse3 -mfpmath = SSE



Answer 8:

这里的博客...我真的很希望为一些跨pollenation是一个Firefox编译换原子基准...

地址:http:// ivoras.sharanet.org/blog/tree/2009-02-11.optimizing-for-atom.html

“事实证明,GCC似乎做一个非常体面的工作与-mtune =本地人,mtune中=一般是比接受。最大的收获(在这个数学重基准)来使用SSE的数学,但即使他们通过调整为Pentium4的被破坏。

“最快和最慢的优化之间的差别是21%。利用行军,而不是mtune中的影响是微不足道的(没有足够的差异来判断它有助于与否)。

“(我已经包括K6仅供参考 - 我知道原子不包含3DNow)

“晚更新:调整为K8(与SSE和O3)产生的182略高最好成绩”



Answer 9:

i686的最接近。 不要去酷睿2。

GCC 4.1 -O3 -march = i686的GCC 4.3 -O3 -march =天然

GCC 4.1 -O4 -ffast,数学GCC 4.3 -O 4 -ffast,数学

http://macles.blogspot.com/2008/09/intel-cc-compiler-gcc-and-intel-atom.html



文章来源: GCC optimization flags for Intel Atom [closed]