_mm512_reduce_mul_pd
Classification
KNC, Arithmetic, CPUID Test: KNCNI
Header File
Synopsis
_mm512_reduce_mul_pd(__m512d a);
Description
Reduce the packed double-precision (64-bit) floating-point elements in "a" by multiplication. Returns the product of all elements in "a".
Operation
DEFINE REDUCE_MUL(src, len) {
IF len == 2
RETURN src[63:0] * src[127:64]
FI
len := len / 2
FOR j:= 0 to (len-1)
i := j*64
src[i+63:i] := src[i+63:i] * src[i+64*len+63:i+64*len]
ENDFOR
RETURN REDUCE_MUL(src[64*len-1:0], len)
}
dst[63:0] := REDUCE_MUL(a, 8)