这里有人已经基准英特尔C ++编译器和GCC? [英] Anyone here has benchmarked Intel C++ compiler and GCC?

查看:163
本文介绍了这里有人已经基准英特尔C ++编译器和GCC?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我不知道我是否应该在这里发表这个问题,因为这似乎是一个面向对象程序设计的网站。

I am not sure whether I should post this question here, because this seems to be a programming-oriented website.

不过,我认为必须有一些在这里大师谁知道这一点。

Anyway, I think there must be some gurus here who knows this.

现在我已经运行CentOS的5.我希望有一个相当大的C ++基于提升程序的编译器的AMD Opteron服务器。哪个编译器我应该选择?

Now I have a AMD Opteron server running CentOS 5. I want to have a compiler for a fairly large c++ Boost based program. Which compiler I should choose?

推荐答案

我希望这有助于超过伤害:)

I hope this helps more than hurts :)

我做了一点编译枪战有时在一年前,和我会断电记忆功能。

I did a little compiler shootout sometime over a year ago, and I am going off memory.


  1. GCC 4.2(苹果)

  2. 英特尔10

  3. GCC 4.2(苹果)+ LLVM

我测试了一下我写多个模板沉重的音频信号处理程序。

I tested multiple template heavy audio signal processing programs that I'd written.

编译时间:英特尔编译器是迄今为止最慢的编译器 - 超过另一个贴引2倍倍慢

Compilation times: The Intel compiler was by far the slowest compiler - more than '2x times slower' as another posted cited.

在GCC的处理比较深的模板很好英特尔。

GCC handled deep templates very well in comparison to Intel.

生成Intel编译器的巨大的目标文件。

The Intel compiler generated huge object files.

GCC + LLVM产生最小的二进制代码。

GCC+LLVM yielded the smallest binary.

生成的code可能有显著差异,由于程序的建设,其中可以使用SIMD。

The generated code may have significant variance due to the program's construction, and where SIMD could be used.

有关我写的方式,我发现,GCC + LLVM产生的最佳code。对于前我花了认真的优化(如我写的),这我写的程序,英特尔总体较好。

For the way I write, I found that GCC + LLVM generated the best code. For programs which I'd written before I took optimization seriously (as I wrote), Intel was generally better.

英特尔的业绩变化;它处理一些程序好得多,有些节目差远了。它处理的原始处理得很好,但是我给GCC + LLVM蛋糕,因为投入较大(正常)计划的背景下,当......它没有更好的。

Intel's results varied; it handled some programs far better, and some programs far worse. It handled raw processing very well, but I give GCC+LLVM the cake because when put into the context of a larger (normal) program... it did better.

英特尔赢得了开箱,数字运算上的巨大的数据集。

Intel won for out of the box, number crunching on huge data sets.

GCC单独产生的最慢code,虽然它可以以最快的速度与测量和纳米优化。我preFER避免那些因为风可与下一个版本的编译器改变方向,可以这么说。

GCC alone generated the slowest code, though it can be as fast with measurement and nano-optimizations. I prefer to avoid those because the wind may change direction with the next compiler release, so to speak.

我从来没有在这个测试中测得写得不好的程序(即结果优于流行的性能库分布)。

I never measured poorly written programs in this test (i.e. results outperformed distributions of popular performance libraries).

最后,节目写了好几年了,使用GCC作为当时的主要编译器。

Finally, the programs were written over several years, using GCC as the primary compiler in that time.

更新:我还能够优化/扩展的Core 2 Duo。该方案是不够干净,使严格别名。

Update: I was also enabling optimizations/extensions for Core2Duo. The programs were clean enough to enable strict aliasing.

这篇关于这里有人已经基准英特尔C ++编译器和GCC?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆