インテル® C++ コンパイラー 17.0 デベロッパー・ガイドおよびリファレンス
int32 インデックスを使用して、float32 ベクトルを分散 (Scatter) プリフェッチします。対応する命令は VSCATTERPF0DPS および VSCATTERPF1DPS です。この組込み関数は、インテル® メニー・インテグレーテッド・コア (インテル® MIC) アーキテクチャーにのみ適用されます。
マスクなし extern void __cdecl _mm512_prefetch_i32extscatter_ps(void* mv, __m512i index, _MM_UPCONV_PS_ENUM conv, int scale, int pf_hint); extern void __cdecl _mm512_prefetch_i32scatter_ps(void* mv, __m512i index, int scale, int pf_hint); |
マスク付き extern void __cdecl _mm512_mask_prefetch_i32extscatter_ps(void* mv, __mmask16 k1, __m512i index, _MM_UPCONV_PS_ENUM conv, int scale, int pf_hint); extern void __cdecl _mm512_mask_prefetch_i32scatter_ps(void* mv, __mmask16 k1, __m512i index, int scale, int pf_hint); |
k1 |
書き込みマスク。k1 書き込みマスクの対応するビットが '1' にセットされているソースメモリーの要素のみプリフェッチされます。 |
index |
メモリー mv のインデックスを含む int32 ベクトル。 |
mv |
メモリーのベースアドレスへのポインター |
conv |
順方向変換の種類。次のいずれかになります。
|
scale |
要素のアドレスを計算するスケールファクター。次の値を使用できます: 1、2、4、および 8。メモリーの i 番目の要素のアドレスは、次のように計算されます。mv + index[i] * scale |
pf_hint |
プリフェッチのヒント。次のいずれかの値を指定します。
|
ベースアドレス mv、int32 インデックス・ベクトル index、およびスケールファクター scale により指定される 16 のメモリー位置。pf_hint 引数に応じて、排他的アクセス要求でメモリーから L1 または L2 キャッシュにプリフェッチされます。
マスクなしの組込み関数は、フルマスク (k1=0xffff) のマスク付き組込み関数と同等です。
順方向変換が不要な場合は、関数名に ext が含まれない、単純化されたバージョンを使用できます。
なし。