VS2010 SP1是否只支持部分AVX指令集?
Microsoft 声明 VS2010 支持全套 AVX 指令:
。 ..
在 VS2010 版本中,所有 AVX 功能和指令都通过内在和 /arch:AVX
来完全支持。
...
但我找不到任何融合乘加运算的内在函数
我需要使用 _mm256_fmadd_ps
函数,但它在“immintrin.h”标头。我真的被它困住了。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
融合乘加内在函数不是 AVX 的一部分。英特尔在后来的 AVX 修订版中删除了它。所以FMA是独立的指令集。
更糟糕的是,还会有两个 FMA3(Intel - Haswell)、FMA4(AMD - Bulldozer)。
VS2010 SP1 支持 FMA4 - AMD 的版本。
这两个处理器系列均尚未发布(AMD - Interlagos 除外,它是 Bulldozer 的服务器部分)。
英特尔 FMA 内在函数适用于 FMA3。由于还没有处理器实现它,因此您还无法使用/测试它。
The Fused-Multiply Add intrinsics aren't part of AVX. Intel got rid of it in their later revisions for AVX. So FMA is separate instruction set.
Even worse, there will be two of them FMA3 (Intel - Haswell), FMA4 (AMD - Bulldozer).
VS2010 SP1 supports FMA4 - AMD's version of it.
Neither processor line has been released yet (except for AMD - Interlagos, which is the server part of Bulldozer).
The Intel FMA intrinsics are for FMA3. Since no processor implements it yet, you won't be able to use/test it yet.