_mm512_prefetch_i32extgather_ps
Classification
AVX-512, Load, CPUID Test: AVX512PF
Header File
Instruction
VGATHERPF0DPS m512
Synopsis
_mm512_prefetch_i32extgather_ps(__m512i vindex, void const * base_addr, _MM_UPCONV_PS_ENUM conv, int scale, int hint);
Description
Prefetches a set of 16 single-precision (32-bit) memory locations pointed by base address "base_addr" and 32-bit integer index vector "vindex" with scale "scale" to L1 or L2 level of cache depending on the value of "hint". The "hint" parameter may be 1 (_MM_HINT_T0) for prefetching to L1 cache, or 2 (_MM_HINT_T1) for prefetching to L2 cache.
The "conv" parameter specifies the granularity used by compilers to better encode the instruction. It should be the same as the "conv" parameter specified for the subsequent gather intrinsic.
Operation
FOR j := 0 to 15
i := j*32
m := j*32
addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8
Prefetch(MEM[addr+31:addr], hint)
ENDFOR