我无法找到这个简单问题的答案,/arch:AVX
是否在Visual Studio 2012 Update 4上启用AVX2及其精美的256位寄存器?
思路:
是的,它启用了AVX,因为VS没有提到AVX2。但我认为VS可以做AVX2,因为我的内在工作。
不,它不是因为SSE和SSE2是分开的
答案 0 :(得分:2)
它指的是AVX而不是AVX2。据微软称,这主要适用于浮点运算。 无论此标志如何,VS2012都支持AVX2内部函数。 AVX适用于SandyBridge和IvyBridge的i3,i5和i7变体。 AVX2始于Haswell。
答案 1 :(得分:0)
使用“/ arch:AVX”编译器选项可以更有效地使用AVX2整数指令。如果禁用此选项,则使用AVX2指令的代码可能比使用SSE2慢(因为SSE2和AVX2之间有许多切换)。
答案 2 :(得分:0)
我已经确认Visual Studio 2013 Update 5,当/ arch:AVX时 启用后,目前仍将代码的某些部分编译成AVX2 没有选择只说AVX,我希望微软能解决这个问题。