2011-04-01 74 views
2

哪个更受行业软件开发业务的青睐?有人认为gcc/g ++在Linux上更受欢迎,而icc在Windows上更受欢迎。还有什么可以选择一个吗?gcc/g ++ vs icc

回答

5

我希望gcc/g ++在开源操作系统上更受欢迎。

MSVC在Windows上更受欢迎。

对于那些试图从应用程序中提取性能的每一位,并且不想在x86汇编程序中手动优化其应用程序中的瓶颈的人来说,icc会很受欢迎。

不确定最新版本,但支持SIMD指令的早期版本的icc(如SSE和MMX等)具有代码,以确保SIMD代码路径仅为Intel品牌的CPU执行。所以AMD等人。沿着更慢的代码路径走。一些人将这种行为归咎于对非英特尔CPU的恶意行为,更有可能的是,icc人员不会费心测试非英特尔CPU,并且“安全”/保守。

1

那么ICC自动启用SSE优化,而我相信gcc和g ++标志必须设置为使他们,如果我是正确的。真的没有太大的区别。 ICC还支持其他一些浮点优化。

另外,如果你有一个英特尔处理器,并且性能至关重要,那么icc可能会工作,但你不会注意到gcc和icc之间的区别,除非你做了重型FPO。

1

icc对于实际编译来说明显快得多 - 至少在linux上。如果你使用的是大型的源代码库,那么这就是使用它的一个很好的理由。

+0

这将是有意义的,因为ICC是更加面向x86和英特尔处理器与amd,gcc和g ++的一些余地显然是非常普遍的,这将解释为什么他们会更慢,同时也试图优化差异体系结构 – 2011-04-01 18:35:51