3

Microsoftは、VS2010がAVX命令のフルセットをサポートしていると述べています。

http://blogs.msdn.com/b/vcblog/archive/2009/11/02/visual-c-code-generation-in-visual-studio-2010.aspx

... VS2010リリースでは、すべてのAVX機能と命令が組み込みおよびを介して完全に/arch:AVXサポートされています。..。

しかし、FusedMultiplyAdd操作の組み込み関数が見つかりません

http://software.intel.com/sites/products/documentation/studio/composer/en-us/2011/compiler_c/intref_cls/common/intref_bk_avx_fma.htm#intref_bk_avx_fma

関数を使用する必要があり_mm256_fmadd_psますが、「immintrin.h」ヘッダーにありません。私は本当にそれに固執しています。

4

1 に答える 1

5

Fused-MultiplyAdd組み込み関数はAVXの一部ではありません。Intelは、AVXのその後のリビジョンでそれを取り除きました。したがって、FMAは別個の命令セットです。

さらに悪いことに、FMA3(Intel-Haswell)、FMA4(AMD-Bulldozer)の2つがあります。

VS2010 SP1は、AMDのバージョンであるFMA4をサポートしています。

どちらのプロセッサラインもまだリリースされていません(AMD-ブルドーザーのサーバー部分であるInterlagosを除く)。

IntelFMA組み込み関数はFMA3用です。まだプロセッサが実装されていないため、まだ使用/テストすることはできません。

于 2011-10-20T20:06:54.120 に答える