Visible to Intel only — GUID: GUID-EC407FBF-BC2F-4732-9380-6B060D42469E
Visible to Intel only — GUID: GUID-EC407FBF-BC2F-4732-9380-6B060D42469E
qsimd-serialize-fp-reduction, Qsimd-serialize-fp-reduction
Tells the compiler to serialize floating-point reduction when vectorizing SIMD loops. This feature is only available for ifort.
Syntax
Linux: |
-qsimd-serialize-fp-reduction -qno-simd-serialize-fp-reduction |
macOS: |
-qsimd-serialize-fp-reduction -qno-simd-serialize-fp-reduction |
Windows: |
/Qsimd-serialize-fp-reduction /Qsimd-serialize-fp-reduction- |
Arguments
None
Default
-qno-simd-serialize-fp-reduction or /Qsimd-serialize-fp-reduction- |
The compiler does not attempt to serialize floating-point reduction in SIMD loops. |
Description
The OpenMP* SIMD reduction specification and the setting of compiler option -fp-model (Linux* and macOS) or /fp (Windows*) can contradict in requirements. When contradiction occurs, the default behavior of the compiler is to follow OpenMP* specification and therefore vectorize the loop, including floating-point reduction.
This option lets you override this default behavior - it causes the compiler to follow the -fp-model (or /fp) specification. This means that the compiler will serialize the floating-point reduction while vectorizing the rest of the loop.
When [q or Q]simd-honor-fp-model is specified and OpenMP* SIMD reduction specification is the only thing causing serialization of the entire loop, addition of option [q or Q]simd-serialize-fp-reduction will result in vectorization of the entire loop except for reduction calculation, which will be serialized.
This option does not affect automatic vectorization of loops. By default, the compiler uses -fp-model (Linux* and macOS) or /fp (Windows*) settings for this.
IDE Equivalent
Alternate Options
None