Unit4 Session2 Parallel Computing Classification
Unit4 Session2 Parallel Computing Classification
Architecture (μpCA)
Unit 4: Parallel Computer Memory Architecture
and Flynn’s Taxonomy
UE22CS251B
Session : 4.2
Microprocessor & Computer Architecture (μpCA)
Parallel Computer Memory Architectures
Hybrid Architecture
Microprocessor & Computer Architecture (μpCA)
With Graphical Processing Unit
Microprocessor & Computer Architecture (μpCA)
Parallel Programming Languages
OpenMP: (Open Multi Processing):
API that Support multiprocessing in C, C++, Fortran. Now with Python also.
Pthreads:
Microprocessor & Computer Architecture (μpCA)
Flynn's Taxonomy of Computer Architecture
Single instruction: only one instruction stream is being acted on by the CPU
during any one clock cycle.
Single data: only one data stream is being used as input during any one
clock cycle.
Deterministic Execution .
Very few are found in recent days.
• Few representatives are Intel Atom Family
(Silverthorne, Lincroft, Diamondville, Pineview)
Microprocessor & Computer Architecture (μpCA)
SIMD: Single Instruction Multiple Data
• Currently, the most common type of parallel computer. Most modern computers fall
into this category.
• Few actual examples of this class of parallel computer have ever existed. One is the
experimental Carnegie-Mellon University.
• A single data stream is fed into multiple processing units.
• Representatives: Systolic Arrays
Microprocessor & Computer Architecture (μpCA)
Systolic Arrays :
Motivation:
• Design an accelerator that is
• Simple and Regular design : # of Unique parts small and regular
• High Concurrency : High Performance
• Balanced Computation and I/O (bandwidth management).
• Idea: Replace a single Processing Element with a regular array of PEs
and carefully orchestrate flow of data between PEs.
Microprocessor & Computer Architecture (μpCA)
Systolic Arrays : Matrix Representation
Microprocessor & Computer Architecture (μpCA)
Systolic Arrays : Matrix Representation
Microprocessor & Computer Architecture (μpCA)
SIMD - Array processor
• Single Computer with Multiple parallel processors
• Processing Units are designed to work together under the supervision of a single control unit.
Team MPCA
Department of Computer Science and Engineering