LOVELY PROFESSIONAL UNIVERSITY
TOPIC: SIMD ARCHITETURE
CAP 503: Computer Organization and Architecture
November 15th 2012
TABLE OF CONTENT
INTRODUCTION 1 Definition 1
Why do we need SIMD? 1
Why should a developer care about SIMD? 2
SIMD architecture 2
HISTORY 3 GENERAL DESCRIPTION 3 TYPES OF SIMD 5 True SIMD 5
True SIMD: Distributed Memory 5
True SIMD: Shared Memory 7
Pipelined SIMD 7
SIMD MACHINES 8 SIMD TECHNOLOGY IN CPU 9 ADVANTAGES AND DISADVANTAGES OF SIMD 9 Advantages 9
CONCLUSION 10 REFERENCES 11 INTRODUCTION
SIMD represents one of the earliest styles of parallel processing. The term SIMD stands for “Single-Instruction Multiple-Data,” The same instruction is executed by multiple processor using different data streams. Each processor has its own data memory, but there is single instruction memory and control processor, which fetches and dispatches instructions. SIMD aptly encapsulates the parallel processing model. Closely related to vector processing, the basic idea is to operate the same instruction sequence simultaneously on a large number of discrete data sets. SIMD machines are geared toward applications that exhibit massive amounts of data parallelism without complicated control flow or excessive amounts of inter-processor communication. Typical applications for SIMD machines include low-level vision and image processing, discrete particle simulation, database searches, and genetic sequence matching.
Fig1. Block diagram of SIMD
Why do we need SIMD?
SIMD offers greater flexibility and opportunities for better performance in video, audio and communication task which are increasingly important for application. SIMD provides a cornerstone for robust and powerful multimedia capabilities that significantly extend the scalar instruction set.
Why should a developer care about SIMD?
SIMD can provide a substantial boost in performance and capability for an application that makes significant use of 3D graphics, image processing, audio compression or other calculation-intense functions. Other features of a program may be accelerated by recoding to take advantage of the parallelism and additional operation of SIMD. Apple adding SIMD capabilities to Core Graphics, QuickDrow and QuickTime. An application that calls them today will see improvement from SIMD without any changes. SIMD also offers the potential to create new applications that take advantage of its features and power. To take advantage of SIMD, an application must be reprogrammed or at least recompiled; however you do not need to rewrite the entire application. SIM typically works best for that 10% of the application that consumes 80% of your CPU time-- these functions typically has heavy computational and data loads, two areas where SIMD...
References: M. Morris Mano (2007). Computer System Architecture. Pearson Education
Please join StudyMode to read the full document