我正在从事Nehalam/westmere微架构CPU的工作。我想为这个架构优化我的代码。有没有什么专门化的编译标志或者GCC的C函数可以帮助我提高代码的运行时性能?
我已经在使用-o3了。
Language of the Code - C
Platform - Linux
GCC Version - 4.4.6 20110731 (Red Hat 4.4.6-3) (GCC)在我的代码中,我有一些浮点比较,它们被做了超过一百万次。
请假设代码已经得到了最好的优化。
发布于 2012-05-18 13:59:26
首先,如果你真的想在像这样的新处理器上从优化中获益,你应该安装最新版本的编译器。4.4早在几年前就出现了,即使它看起来仍然受到维护,我怀疑更新的优化代码是否会向后移植。(当前版本为4.7)
Gcc有一个通用的优化标志,通常应该生成针对编译体系结构进行优化的代码:-march=native。再加上-O3,这应该就是你所需要的了。
(对于本网站未来的问题,请使用完整的英语语法和标点符号。)
发布于 2012-05-18 17:26:26
您需要添加一个-march=...选项。应该用in the i386/x86_64 options for GCC here描述的任何最接近你的CPU架构(往往有细微差别)的东西来替换...。
我之所以会使用core2,是因为corei7 (你想要的版本)只能在GCC 4.6及更高版本中使用。请参阅arch list for GCC 4.6 here。
发布于 2016-02-10 08:12:08
如果您真的想使用太旧以至于不支持corei7的-mtune=barcelona,您可以使用-mtune=barcelona
https://stackoverflow.com/questions/10646894
复制相似问题