Parallel
Organization
Presented by:Umma Khatuna Jannat
Traditionally, software has been written for serial computation:
To be run on a single computer having a single Central
Processing Unit (CPU); A problem is broken into a discrete series
of instructions.
Instructions are executed one after another.
Only one instruction may execute at any moment in time.
What is concurrent computing?
Parallel computing
In the simplest sense, parallel computing is the simultaneous use
of multiple resources to solve a computational problem:
To be run using multiple CPUs
A problem is broken into discrete parts that can be solved
concurrently
Each part is further broken down to a series of instructions
Instructions from each part execute simultaneously on different
CPUs
Parallel Processing
Parallel processing is also achieved by using multiple
processors clustered together to process one part of a large
function simultaneously to obtain results faster.
CPU
CPU
CPU
CPU
InstructionsProblem
Multiple Processor
Organization
 Single instruction, single data stream – SISD
 Single instruction, multiple data stream – SIMD
 Multiple instruction, single data stream – MISD
 Multiple instruction, multiple data stream- MIMD
Characteristics of Parallel
Processors…
Single Instruction, Single
Data Stream ~SISD
A serial (non-parallel ) computer
Single instruction : only one instruction stream is being acted
on by CPU during any one clock cycle
Single data :only one data stream is being used as input
during any one clock cycle
Deterministic execution
This is the oldest and even today, the most common type of
computer
Examples: older generation mainframes, minicomputers and
workstations ,most modern day PCs.
SISD
Memory ControlProcessor
Data stream Instruction stream
Single Instruction, Multiple Data
Stream - SIMD
Single machine instruction
Controls simultaneous execution
Number of processing elements
Lockstep basis
Each processing element has associated data memory
Each instruction executed on different set of data by different
processors
Vector and array processors
Memory
Memory
Memory
Processor
Processor
Processor
ControlInstruction stream
Instruction stream
Instruction stream
Data stream
Data stream
Data stream
SIMD
A single data stream is fed into multiple processing units.
Each processing unit operates on the data independently
via independent instruction streams.
multiple algorithms attempting to crack a single coded
message.
MULTIPLE INSTRUCTION,
SINGLE DATA STREAM -
MISD
Memory
Data stream
Processor
Instruction stream
Control
Data stream
Data stream
Instruction stream
Instruction stream
Processor
Processor Control
Control
Currently, the most common type of parallel computer. Most
modern computers fall into this category.
Multiple Instruction: every processor may be executing a
different instruction stream
Multiple Data: every processor may be working with a
different data stream
Examples: most current supercomputers, networked parallel
computer clusters and "grids", multi-processor
MULTIPLE INSTRUCTION,
MULTIPLE DATA STREAM-
MIMD
Uses for Parallel Computing
Historically, parallel computing has been considered to be “the
high end of computing", and has been used to model difficult
scientific and engineering problems found in the real world,
Some examples:
Atmosphere ,Earth , Environment
Physics-applied ,nuclear, high pressure ,fusion, photonics
Bioscience , Biotechnology , Genetics
Chemistry, Molecular Sciences
Geology
Mechanical Engineering-from prosthetics to spacecraft
Electrical Engineering, Circuit Design
Computer Science, Mathematics
Uses in Today’s world…
Today, commercial applications provide an equal or greater
driving force in the development of faster computers. These
applications require the processing of large amounts of data in
sophisticated ways for examples:
Databases
Web search engines, web based business services
Medical imaging and diagnosis
Pharmaceutical design
Management of national and multi-national corporations
Thank You

Parallel Computing

  • 1.
  • 2.
    Traditionally, software hasbeen written for serial computation: To be run on a single computer having a single Central Processing Unit (CPU); A problem is broken into a discrete series of instructions. Instructions are executed one after another. Only one instruction may execute at any moment in time. What is concurrent computing?
  • 3.
    Parallel computing In thesimplest sense, parallel computing is the simultaneous use of multiple resources to solve a computational problem: To be run using multiple CPUs A problem is broken into discrete parts that can be solved concurrently Each part is further broken down to a series of instructions Instructions from each part execute simultaneously on different CPUs
  • 4.
    Parallel Processing Parallel processingis also achieved by using multiple processors clustered together to process one part of a large function simultaneously to obtain results faster. CPU CPU CPU CPU InstructionsProblem
  • 5.
    Multiple Processor Organization  Singleinstruction, single data stream – SISD  Single instruction, multiple data stream – SIMD  Multiple instruction, single data stream – MISD  Multiple instruction, multiple data stream- MIMD
  • 6.
  • 7.
    Single Instruction, Single DataStream ~SISD A serial (non-parallel ) computer Single instruction : only one instruction stream is being acted on by CPU during any one clock cycle Single data :only one data stream is being used as input during any one clock cycle Deterministic execution This is the oldest and even today, the most common type of computer Examples: older generation mainframes, minicomputers and workstations ,most modern day PCs.
  • 8.
  • 9.
    Single Instruction, MultipleData Stream - SIMD Single machine instruction Controls simultaneous execution Number of processing elements Lockstep basis Each processing element has associated data memory Each instruction executed on different set of data by different processors Vector and array processors
  • 10.
  • 11.
    A single datastream is fed into multiple processing units. Each processing unit operates on the data independently via independent instruction streams. multiple algorithms attempting to crack a single coded message. MULTIPLE INSTRUCTION, SINGLE DATA STREAM - MISD
  • 12.
    Memory Data stream Processor Instruction stream Control Datastream Data stream Instruction stream Instruction stream Processor Processor Control Control
  • 13.
    Currently, the mostcommon type of parallel computer. Most modern computers fall into this category. Multiple Instruction: every processor may be executing a different instruction stream Multiple Data: every processor may be working with a different data stream Examples: most current supercomputers, networked parallel computer clusters and "grids", multi-processor MULTIPLE INSTRUCTION, MULTIPLE DATA STREAM- MIMD
  • 14.
    Uses for ParallelComputing Historically, parallel computing has been considered to be “the high end of computing", and has been used to model difficult scientific and engineering problems found in the real world, Some examples: Atmosphere ,Earth , Environment Physics-applied ,nuclear, high pressure ,fusion, photonics Bioscience , Biotechnology , Genetics Chemistry, Molecular Sciences Geology Mechanical Engineering-from prosthetics to spacecraft Electrical Engineering, Circuit Design Computer Science, Mathematics
  • 15.
    Uses in Today’sworld… Today, commercial applications provide an equal or greater driving force in the development of faster computers. These applications require the processing of large amounts of data in sophisticated ways for examples: Databases Web search engines, web based business services Medical imaging and diagnosis Pharmaceutical design Management of national and multi-national corporations
  • 16.