2017-03-03 47 views
1

请问您对GNU Fortran编译器(v6.3.0)标记的建议,以优化Ivy Bridge架构的代码(Intel Xeon CPU E5-2697v2 Ivy Bridge @ 2.7千兆赫)?Ivy Bridge架构的GNU Fortran编译器优化标记

目前我正在编译具有以下标志代码:

-O3 -march=ivybridge -mtune=ivybridge -ffast-math -mavx -m64 -w 

回答

2

除非你使用内在特定的Ivy Bridge,Sandy Bridge的标志OS足够了。我希望你应该通过额外设置找到一些优势-funroll-loops --param max-unroll-times=2

有时-O2 -ftree-vectorize会比-O3好。 如果您有复杂的数据类型,您将需要检查与-fno-cx-limited-range,因为-ffast-math的默认值可能过于激进。

+1

gfortran(但不是gcc)max-unroll-times = 4应该经常比2更好一些。 – tim18

+0

请先学习[如何格式化](https://stackoverflow.com/help/formatting) –