_mm512_mask_prefetch_i32scatter_pd
Classification
AVX-512, Store, CPUID Test: AVX512PF
Header File
immintrin.h
Instruction
VSCATTERPF0DPD vm32y {k}
Synopsis
 _mm512_mask_prefetch_i32scatter_pd(void* base_addr, __mmask8 k, __m256i vindex, int scale, int hint);
Description
Prefetch double-precision (64-bit) floating-point elements with intent to write using 32-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. 64-bit elements are brought into cache from addresses starting at "base_addr" and offset by each 32-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*32
	IF k[j]
		addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8
		Prefetch(MEM[addr+63:addr], hint)
	FI
ENDFOR