带有命令行选项(甚至带有)的MinGW-march=corei7-avx -mtune=corei7-avx
的or-march=corei7 -mtune=corei7 -mavx
命令行选项是否可以将AVX指令用于数学例程?请注意,从这里开始不起作用(对于MinGW上的最新版本,这是“无法识别的选项” )。-mfpmath=sse
-mfpmath=both
--with-fpmath=avx
问问题
1117 次
1 回答
3
AVX 由-march=corei7-avx
或启用-mavx
。该-mtune
选项对于启用 AVX 既不是必要的,也不是充分的。
A-mfpmath=avx
没有任何意义,因为使用此开关可以控制标量浮点代码的生成。如果只使用 4 浮点向量寄存器的一个浮点数或仅使用 8 浮点向量寄存器的一个元素,则没有区别。如果march=avx
启用,标量浮点指令无论如何都会使用 VEX 编码,这将节省一些 mov 指令。
请注意,在 x86_64 上-mfpmath
默认为 SSE,因此如果您不完全了解自己在做什么,通常不需要使用此开关,甚至是有害的。
于 2012-12-06T09:43:33.917 回答