A Comparative Analysis of SIMD and MIMD Architectures
A Comparative Analysis of SIMD and MIMD Architectures
A Comparative Analysis of SIMD and MIMD Architectures
Rajdeep Kaur
CSE (M.Tech)
SBBSIET, Jalandhar(Punjab),India
Abstract-: Computer Architectures are classified depending upon their implementation. This paper describes the
SIMD and MIMD architectures, their implementation. SIMD and MIMD system both are parallel computers.
Elaborate the types SIMD architecture-: True and Pipelined SIMD architecture, MIMD architectures-: Shared
Memory MIMD architectures, Distributed Memory MIMD architectures
Keywords-: Flynns Taxonomy, SIMD architecture, MIMD architecture, Types of SIMD and MIMD architectures.
I.
INTRODUCTION
Computer architecture as the structure of a computer that a machine language programmer must understand to write a
correct program for a machine [1]. Computer architecture can be classified into four main categories. These categories
are defined under the Flynns Taxonomy. Computer architecture is classified by the number of instructions that are
running in parallel and how its data is managed. The four categories that computer architecture can be classified under
are:
1. SISD: Single Instruction, Single Data
2. SIMD: Single Instruction, Multiple Data
3. MISD: Multiple Instruction, Single Data
4. MIMD: Multiple Instruction, Multiple Data
Page | 1151
Kaur et al., International Journal of Advanced Research in Computer Science and Software Engineering 3(9),
September - 2013, pp. 1151-1156
Simplicity of concept and programming
Regularity of structure
Easy scalability of size and performance
Straightforward applicability in a number of fields which demands parallelism to achieve necessary performance.
A. Basic Principles:
There is a two-dimensional array of processing elements, each connected to its four nearest neighbors.
All processors execute the same instruction simultaneously.
Each processor incorporates local memory.
The processors are programmable, that is, they can perform a variety of functions.
Data can propagate quickly through the array. [1]
True SIMD architecture: True SIMD architectures can be determined by its usage of distributed memory and
shared memory. Both true SIMD architectures possess similar implementation as seen on Fig.4, but differ on
placement of processor and memory modules. [2]
Page | 1152
Kaur et al., International Journal of Advanced Research in Computer Science and Software Engineering 3(9),
September - 2013, pp. 1151-1156
Pipelined SIMD Architecture: This architecture implements the logic behind pipelining an instruction as observe
on Fig.7. Each processing element will receive an instruction from the controlling unit, using a shared memory,
and will perform computation at multiple stages. The controlling unit provides the parallel processing elements
with instructions. The sequential processing element is used to handle other instructions. [2]
Page | 1153
Kaur et al., International Journal of Advanced Research in Computer Science and Software Engineering 3(9),
September - 2013, pp. 1151-1156
III.
MIMD ARCHITECTURE
MIMD stands for Multiple Instruction, Multiple Data. The MIMD class of parallel architecture is the most familiar and
possibly most basic form of parallel processor. MIMD architecture consists of a collection of N independent, tightlycoupled processors, each with memory that may be common to all processors, and /or local and not directly accessible by
the other processors.
TABLE 1
Shared Memory MIMD classes
Features
NUMA
COMA
CC-NUMA
Abbreviation
NonUniform
memory
access
Cache only
memory
access
Memory uses
Shared
memory is
divided into
blocks and
each block is
attached with
processor
Every
memory
block
works as a
cache
memory
CacheCoherent
non-uniform
memory
access
Each cache
memory and
memory
blocks are
attached with
processors
Page | 1154
Kaur et al., International Journal of Advanced Research in Computer Science and Software Engineering 3(9),
September - 2013, pp. 1151-1156
Distributed Memory MIMD architecture:
It replicates the processor/memory pairs and connects them via an interconnection network. The
processor/memory pair is called processing element (PE).
Each processing element (PE) can interact with each other via sending messages.
IV.
Features
SIMD
MIMD
Abbreviation
Complexity of architectures
Simple
Complex
Cost
Low
Medium
Conditional Statements
Low
synchronization
overheads
Low
PE-to-PE
communication overheads
Implicit in program
Efficient
execution
of
variable-time instructions
V.
CONCLUSION
The purpose of this paper is to provide an overview of recent architectural approaches of parallel systems and also
comparison between them. Describes the Flynns Taxonomy-: SIMD and MIMD. SIMD allow for more faster and
multiple computation in this field where sacrifice cannot be made on the delay of time. SIMD processing architecture
example-: a graphic processor processing instructions for translation or rotation or other operations are done on multiple
data. MIMD processing architecture example is super computer or distributed computing systems with distributed or
single shared memory.
2013, IJARCSSE All Rights Reserved
Page | 1155
Kaur et al., International Journal of Advanced Research in Computer Science and Software Engineering 3(9),
September - 2013, pp. 1151-1156
REFERENCES
[1]
Advanced Computer Architectures: A Design Space Approach, Dezso Sima , Terence Fountain, Peter Karsuk ,
Pearson Eduction.
[2]
Houffaneh Osman, Usage of SIMD Processor Extensions, March (2010).
[3]
Claudio Gennaro, Models for SIMD_ MIMD and Hybrid Parallel Architectures, Ph.D. Thesis- 1995/1998.
[4]
Bertil Svensson, SIMD Architecture, 1992.
[5]
http://en.wikipedia.org/wiki/File:MIMD.svg
[6]
MICHAEL J. FLYNN AND KEVIN W. RUDD, Parallel Architectures, ACM Computing Surveys, Vol. 28, No.
1, March 1996
[7]
Taxonomy of Supercomputers: http://www.cosc.brocku.ca/Offerings/3P93/notes/2-Taxonomy.pdf
Page | 1156