インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

FP ブロードキャスト操作の組込み関数

インテル® アドバンスト・ベクトル・エクステンション 512 (インテル® AVX-512) 組込み関数のプロトタイプは、zmmintrin.h ヘッダーファイルで定義されていますが、実際にヘッダーをコードにインクルードする場合は、immintrin.h を使用します。


組込み関数名

演算

対応するインテル® AVX-512 命令

_mm512_broadcast_f32x4_mm512_mask_broadcast_f32x4_mm512_maskz_broadcast_f32x4

float32 要素をデスティネーションの 4 つの要素にブロードキャストします。

VBROADCASTF32X4

_mm512_broadcast_f64x4_mm512_mask_broadcast_f64x4_mm512_maskz_broadcast_f64x4

float64 要素をデスティネーションの 4 つの要素にブロードキャストします。

VBROADCASTF64X4

_mm512_broadcastsd_pd_mm512_mask_broadcastsd_pd_mm512_maskz_broadcastsd_pd

パックド float64 要素をデスティネーションのすべての要素にブロードキャストします。

VBROADCASTSD

_mm512_broadcastss_ps_mm512_mask_broadcastss_ps_mm512_maskz_broadcastss_ps

パックド float32 要素をデスティネーションのすべての要素にブロードキャストします。

VBROADCASTSS


変数 定義
k

セレクターとして使用される書き込みマスク

a

1 つ目のソースベクトルの要素

src

書き込みマスクの結果に応じて使用されるソース要素


_mm512_broadcast_f32x4

extern __m512 __cdecl _mm512_broadcast_f32x4(__m128 a);

a の 4 つのパックド float32 要素をデスティネーションのすべての要素にブロードキャストします。



_mm512_mask_broadcast_f32x4

extern __m512 __cdecl _mm512_mask_broadcast_f32x4(__m512 src, __mmask16 k, __m128 a);

書き込みマスク k を使用して、a の 4 つのパックド float32 要素をデスティネーションのすべての要素にブロードキャストします (マスクの対応するビットが設定されていない場合は src の要素がコピーされます)。



_mm512_maskz_broadcast_f32x4

extern __m512 __cdecl _mm512_maskz_broadcast_f32x4(__mmask16 k, __m128 a);

ゼロマスク k を使用して、a の 4 つのパックド float32 要素をデスティネーションのすべての要素にブロードキャストします (マスクの対応するビットが設定されていない場合は要素が 0 に設定されます)。



_mm512_broadcast_f64x4

extern __m512d __cdecl _mm512_broadcast_f64x4(__m256d a);

a の 4 つのパックド float64 要素をデスティネーションのすべての要素にブロードキャストします。



_mm512_mask_broadcast_f64x4

extern __m512d __cdecl _mm512_mask_broadcast_f64x4(__m512d src, __mmask8 k, __m256d a);

書き込みマスク k を使用して、a の 4 つのパックド float64 要素をデスティネーションのすべての要素にブロードキャストします (マスクの対応するビットが設定されていない場合は src の要素がコピーされます)。



_mm512_maskz_broadcast_f64x4

extern __m512d __cdecl _mm512_maskz_broadcast_f64x4(__mmask8 k, __m256d a);

ゼロマスク k を使用して、a の 4 つのパックド float64 要素をデスティネーションのすべての要素にブロードキャストします (マスクの対応するビットが設定されていない場合は要素が 0 に設定されます)。



_mm512_broadcastsd_pd

extern __m512d __cdecl _mm512_broadcastsd_pd(__m128d a);

a の下位 float64 要素をデスティネーションのすべての要素にブロードキャストします。



_mm512_mask_broadcastsd_pd

extern __m512d __cdecl _mm512_mask_broadcastsd_pd(__m512d src, __mmask8 k, __m128d a);

書き込みマスク k を使用して、a の下位 float64 要素をデスティネーションのすべての要素にブロードキャストします (マスクの対応するビットが設定されていない場合は src の要素がコピーされます)。



_mm512_maskz_broadcastsd_pd

extern __m512d __cdecl _mm512_maskz_broadcastsd_pd(__mmask8 k, __m128d a);

ゼロマスク k を使用して、a の下位 float64 要素をデスティネーションのすべての要素にブロードキャストします (マスクの対応するビットが設定されていない場合は要素が 0 に設定されます)。



_mm512_broadcastss_ps

extern __m512 __cdecl _mm512_broadcastss_ps(__m128 a);

a の下位 float32 要素をデスティネーションのすべての要素にブロードキャストします。



_mm512_mask_broadcastss_ps

extern __m512 __cdecl _mm512_mask_broadcastss_ps(__m512 src, __mmask16 k, __m128 a);

書き込みマスク k を使用して、a の下位 float32 要素をデスティネーションのすべての要素にブロードキャストします (マスクの対応するビットが設定されていない場合は src の要素がコピーされます)。



_mm512_maskz_broadcastss_ps

extern __m512 __cdecl _mm512_maskz_broadcastss_ps(__mmask16 k, __m128 a);

ゼロマスク k を使用して、a の下位 float32 要素をデスティネーションのすべての要素にブロードキャストします (マスクの対応するビットが設定されていない場合は要素が 0 に設定されます)。