Intel® C++ Compiler Classic Developer Guide and Reference

ID 767249
Date 7/13/2023
Public
Document Table of Contents

Floating Point Dot Product Intrinsics

These Intel® Streaming SIMD Extensions (Intel® SSE4) intrinsics enable floating point single-precision and double-precision dot products. The prototypes for these intrinsics are in the smmintrin.h file.

To use these intrinsics, include the immintrin.h file as follows:

#include <immintrin.h>

Intrinsic

Operation

Corresponding
Intel® SSE4 Instruction

_mm_dp_pd

Double-precision dot product

DPPD

_mm_dp_ps

Single-precision dot product

DPPS

_mm_dp_pd

__m128d _mm_dp_pd( __m128d a, __m128d b, const int mask);

Calculates the dot product of double-precision packed values with mask-defined summing and zeroing of the parts of the result.

_mm_dp_ps

__m128 _mm_dp_ps( __m128 a, __m128 b, const int mask);

Calculates the dot product of single-precision packed values with mask-defined summing and zeroing of the parts of the result.