A Review of SIMD Multimedia Extensions and their Usage in Scientific and Engineering Applications
- 17 January 2008
- journal article
- review article
- Published by Oxford University Press (OUP) in The Computer Journal
- Vol. 51 (6), 630-649
- https://doi.org/10.1093/comjnl/bxm099
Abstract
The volume and complexity of data processed by today's personal computers are increasing exponentially, placing incredible demands on the microprocessors. In the meantime, computing performance that can be achieved by increasing the clock speed of a microprocessor is reaching to physical limits thus making the architectural solutions more prominent. Due to this an important architectural feature is added to recent microprocessors, single instruction multiple data (SIMD), which is a set of instructions that can speed up an application performance by allowing basic operation to be performed on multiple data elements in parallel with fewer instructions. The SIMD computational technique was introduced in the IA-32 Intel® architecture with MMX technology and then further enhanced with Intel's introduction of streaming SIMD extensions (SSE), SSE 2 (SSE2) and SSE 3 (SSE3). Although programming using these SIMD extensions enables software to achieve higher performance, several exiting scientific applications are not affected. This paper gives an overview of SIMD multimedia extensions. The features of these extensions are introduced. Available methods for programming with multimedia instruction sets are discussed. It also reviews recent trends to use multimedia extensions to accelerate many applications such as multimedia, scientific and engineering applications, and argues for further use in other significant computationally intensive applications.Keywords
This publication has 33 references indexed in Scilit:
- Application-specific SIMD synthesis for reconfigurable architecturesMicroprocessors and Microsystems, 2006
- SIMD correlator library for GNSS software receiversGPS Solutions, 2006
- Implementation of H.264 encoder and decoder on personal computersJournal of Visual Communication and Image Representation, 2006
- Multimedia vectorization of floating-point MIN/MAX reductionsConcurrency and Computation: Practice and Experience, 2006
- Multimedia extensions for general purpose microprocessors: a surveyMicroprocessors and Microsystems, 2005
- SIMD Optimization of Linear Expressions for Programmable Graphics HardwareComputer Graphics Forum, 2004
- Emmerald: a fast matrix-matrix multiply using Intel's SSE instructionsConcurrency and Computation: Practice and Experience, 2001
- Multimedia processorsProceedings of the IEEE, 1998
- VLSI architectures for video compression-a surveyProceedings of the IEEE, 1995
- Identification of common molecular subsequencesJournal of Molecular Biology, 1981