我在一个对性能非常敏感的应用程序域的运行时系统上工作。我们付出了很多努力来保持与旧编译器版本的向后兼容性,包括避免最近实现的语言结构,并为旧版本合成它们。
但是,我担心这种努力会对我们的用户造成伤害,因为他们可以继续使用编译器版本,这会耗费巨大的性能。不幸的是,我无法在各个版本中找到任何真正的执行性能比较。如果有人有关于此问题的报告的链接,请发布它们。
我真的很想看到涵盖大量版本的基准测试(如果你能回到3.2,这太棒了)和应用程序/测试
答案 0 :(得分:2)
有点旧,但仍然显示了GCC取得了多大进展:This benchmark表明GCC 4.4带有新的寄存器分配器(IRA)并且专注于优化使其变得几乎与ICC一样强大(这被认为是是他最积极的优化者。)
我强烈建议使用GCC 4.4 [.1]。
如果您使用的是Windows,并使用MinGW 3.4.x,则应该立即升级,因为该特定端口非常错误,并且会生成可怕的代码。