_mm512_mask_prefetch_i64scatter_ps
Classification
AVX-512, Store, CPUID Test: AVX512PF
Header File
immintrin.h
Instruction
VSCATTERPF0QPS vm64z {k}
Synopsis
 _mm512_mask_prefetch_i64scatter_ps(void* base_addr, __mmask8 k, __m512i vindex, int scale, int hint);
Description
Prefetch single-precision (32-bit) floating-point elements with intent to write into memory using 64-bit indices. The "hint" parameter may be 1 (_MM_HINT_T0) for prefetching to L1 cache, or 2 (_MM_HINT_T1) for prefetching to L2 cache. 32-bit elements are stored at addresses starting at "base_addr" and offset by each 64-bit element in "vindex" (each index is scaled by the factor in "scale") subject to mask "k" (elements are not brought into cache when the corresponding mask bit is not set). "scale" should be 1, 2, 4 or 8.
Operation
FOR j := 0 to 7
	i := j*64
	m := j*64
	IF k[j]
		addr := base_addr + vindex[m+63:m] * ZeroExtend64(scale) * 8
		Prefetch(MEM[addr+31:addr], hint)
	FI
ENDFOR