不同g ++版本生成的代码基准 [英] Benchmarks of code generated by different g++ versions

查看:64
本文介绍了不同g ++版本生成的代码基准的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在对性能非常敏感的应用程序域的运行时系统上工作.为了保持与较早版本的编译器的向后兼容性,我们付出了很多努力,包括避免使用较新实现的语言构造,并为较早的版本进行合成.

I work on a runtime system for an application domain that is very performance sensitive. We go to a lot of effort to maintain backward compatibility with older compiler versions, including avoiding more recently-implemented language constructs, and synthesizing them for the older versions.

但是,我担心这项工作会使我们的用户继续使用使他们付出巨大性能的编译器版本,这对我们的用户不利.不幸的是,我还没有找到任何版本之间执行性能的真正比较.如果有人有指向此问题的报告的链接,请发布它们.

However, I'm concerned that this effort does a disservice to our users, by enabling them to continue to use compiler releases that are costing them huge amounts of performance. Unfortunately, I haven't been able to find any real comparison of execution performance across releases. If anyone has links to reports on this issue, please post them.

我真的很想看到涵盖广泛发行版的基准测试(如果您可以回到3.2,那就太好了)和应用程序/测试

I'd really like to see benchmarks that cover a wide span of releases (if you can get back to 3.2, that's amazing) and applications/tests

推荐答案

有点陈旧,但仍显示了GCC的进展情况:

A bit old, but still shows how much GCC have progressed: This benchmark shows that GCC 4.4 with it's new register allocator (IRA) and the focus on optimization made it become almost as powerful as ICC (Which is considered to be he most aggressive optimizer available).

我强烈建议使用GCC 4.4 [.1].

I highly recommend using GCC 4.4[.1].

如果您使用的是Windows,并且使用的是MinGW 3.4.x,则应立即进行升级,因为该特定端口存在相当多的错误,并会生成可怕的代码.

If you are on Windows, and using MinGW 3.4.x, you should upgrade NOW, since that specific port is rather buggy and generates horrible code.

这篇关于不同g ++版本生成的代码基准的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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