<<<    Index    >>>
9-1
CHAPTER 9
PROGRAMMING WITH THE STREAMING SIMD
EXTENSIONS
The Intel Streaming SIMD Extensions comprise a set of extensions to the Intel Architecture (IA)
that is designed to greatly enhance the performance of advanced media and communications
applications. These extensions (which include new registers, data types, and instructions) are
combined with a single-instruction, multiple-data (SIMD) execution model to accelerate the
performance of applications. Applications that typically use compute-intensive algorithms to
perform repetitive operations on large arrays of simple, native data elements benefit the most.
Applications that require regular access to large amount of data also benefit from the Streaming
SIMD Extensions prefetching and streaming stores capabilities.
Examples of these types of applications include:
•
motion video
•
combined graphics with video
•
image processing
•
audio synthesis
•
speech recognition, synthesis, and compression
•
telephony
•
video conferencing
•
2D and 3D graphics.
The Streaming SIMD Extensions define a simple and flexible software model. This new mode
introduces a new operating-system visible state. To enhance performance and yield more
concurrent execution, a new set of registers has been added. All existing software will continue
to run correctly without modification on IA processors that incorporate the Streaming SIMD
Extensions, even in the presence of existing and new applications that incorporate this tech-
nology.
The following sections of this chapter describe the Streaming SIMD Extensions’ basic program-
ming environment, including the SIMD floating-point register set, data types, and instruction
set. Detailed descriptions of the Streaming SIMD Extensions are provided in Chapter 3, Instruc-
tion Set Reference, of the Intel Architecture Software Developer’s Manual, Volume 2. The
manner in which the Streaming SIMD Extensions are integrated into the IA system program-
ming model is described in Chapter 10, MMX™ Technology System Programming, in the Intel
Architecture Software Developer’s Manual, Volume 3.
<<<    Index    >>>