Several Intel® processors enable development of optimized multimedia applications through extensions to previously implemented instructions. Applications with media-rich bit streams can significantly improve performance by using single instruction, multiple data (SIMD) instructions to process data elements in parallel.
The most direct way to use these instructions is to inline the assembly language instructions into your source code. However, this process can be time-consuming and tedious. In addition, your compiler may not support inline assembly language programming. The Intel® C++ Compiler enables easy implementation of these instructions through the use of API extension sets built into the compiler. These extension sets are referred to as intrinsic functions or intrinsics.
The Intel C++ Compiler supports both intrinsics that work on specific architectures and intrinsics that work across all IA-32 and systems based on IA-64 architecture..
Intrinsics provide you with several benefits:
The following table shows which intrinsics are supported on each processor listed in the left column.
On processors that do not support Streaming SIMD Extensions 2 (SSE2) instructions but do support MMX Technology, you can use the sse2mmx.h emulation pack to enable support for SSE2 instructions. You can use the sse2mmx.h header file for the following processors:
Processors: | MMX(TM) Technology Instructions | Streaming SIMD Extensions | Streaming SIMD Extensions 2 | Streaming SIMD Extensions 3 | IA-64 Instructions |
---|---|---|---|---|---|
Itanium® Processor | Supported |
Supported |
Not Supported |
|
Supported |
Pentium® 4 Processor |
Supported |
Supported |
Supported |
Supported |
Not Supported |
Pentium® III Processor |
Supported |
Supported |
Not Supported |
|
Not Supported |
Pentium® II Processor |
Supported |
Not Supported |
Not Supported |
|
Not Supported |
Pentium® with MMX Technology |
Supported |
Not Supported |
Not Supported |
|
Not Supported |
Pentium® Pro Processor |
Not Supported |
Not Supported |
Not Supported |
|
Not Supported |
Pentium® Processor |
Not Supported |
Not Supported |
Not Supported |
|
Not Supported |