Vectorization Overview (IA-32 Only)

The vectorizer is a component of the Intel® compiler that automatically uses SIMD instructions in the MMX™, SSE, and SSE2 instruction sets. The vectorizer detects operations in the program that can be done in parallel, and then converts the sequential operations like one SIMD instruction that processes 2, 4, 8 or up to 16 elements in parallel, depending on the data type.

This section provides options description, guidelines, and examples for Intel® compiler vectorization implemented by IA-32 compiler only.

The section discusses the following topics, among others:

The compiler supports a variety of directives that can help the compiler to generate effective vector instructions. See Vectorization Support.

See The Software Vectorization Handbook. Applying Multimedia Extensions for Maximum Performance, A.J.C. Bik. Intel Press, June, 2004, for a detailed discussion of how to vectorize code using the Intel® compiler. Additionally, see the Related Publications topic in this document for other resources.