SlideShare a Scribd company logo
1 of 21
Introduction to Parallel
Processor
Chinmay Terse
Rahul Agarwal
Vivek Ashokan
Rahul Nair
What is Parallelism?
• Parallel processing is a term used to denote
simultaneous computation in CPU for the purpose of
measuring its computation speeds
• Parallel Processing was introduced because the
sequential process of executing instructions took a lot of
time
Classification Parallel Processor Architectures
SIMD MIMD
It is also called as Array Processor It is also called as Multiprocessor
Here, single stream of instruction is
fetched
Here, multiple streams of instruction
are fetched
The instruction stream is fetched by
shared memory
The instruction streams are fetched
by control unit
Here, instruction is broadcasted to
multiple processing elements(PEs)
Here, instruction streams are
decoded to get multiple decoded
instruction stream (IS)
Block Diagram of Tightly Coupled Multiprocessor
• Processors share memory
• Communicate via that shared memory
Block Diagram of Loosely Coupled Multiprocessor
Cluster Computer Architecture
Cluster v. SMP
• Both provide multiprocessor support to high demand applications.
• Both available commercially
• SMP:
— Easier to manage and control
— Closer to single processor systems
– Scheduling is main difference
– Less physical space
– Lower power consumption
• Clustering:
— Superior incremental & absolute scalability
— Less cost
— Superior availability
– Redundancy
Loosely Coupled Multiprocessor Tightly Coupled Multiprocessor
Communication takes places
through Message Transfer System
Communication takes places
through PMIN.
The processors do not share
memory
The processors shares memory
Each processor has its own local
memory
Each processor does have its own
local memory
They are referred to as Distributed
Systems
They are referred to as Shared
Systems
Interaction between the processors
and IO modules is very low
Interaction between the processors
and IO modules is very high
The processor is directly connected
to IO devices.
The processor is connected to IO
devices through IOPIN
There are no unmapped local
memory
Every processor has unmapped
local memory
Communication Models
• Shared Memory
– Processors communicate with shared address space
– Easy on small-scale machines
– Advantages:
• Model of choice for uniprocessors, small-scale MPs
• Ease of programming
• Lower latency
• Easier to use hardware controlled caching
• Message passing
– Processors have private memories,
communicate via messages
– Advantages:
• Less hardware, easier to design
• Focuses attention on costly non-local operations
• Can support either SW model on either HW base
Shared Address/Memory Model
• Communicate via Load and Store
– Oldest and most popular model
• Based on timesharing: processes on multiple processors vs. sharing
single processor
• Single virtual and physical address space
– Multiple processes can overlap (share), but ALL threads share a
process address space
• Writes to shared address space by one thread are visible to reads of
other threads
– Usual model: share code, private stack, some shared heap, some
private heap
Advantages shared-memory
communication model
• Compatibility with SMP hardware
• Ease of programming when communication patterns are complex or vary
dynamically during execution
• Ability to develop apps using familiar SMP model, attention only on
performance critical accesses
• Lower communication overhead, better use of BW for small items, due to
implicit communication and memory mapping to implement protection in
hardware, rather than through I/O system
• HW-controlled caching to reduce remote comm. by caching of all data, both
shared and private.
Shared Address Model Summary
• Each process can name all data it shares with other processes
• Data transfer via load and store
• Data size: byte, word, ... or cache blocks
• Uses virtual memory to map virtual to local or remote physical
• Memory hierarchy model applies: now communication moves
data to local proc. cache (as load moves data from memory to
cache)
– Latency, BW (cache block?),
scalability when communicate?
Message Passing Model
• Whole computers (CPU, memory, I/O devices) communicate as explicit I/O
operations
• Send specifies local buffer + receiving process on remote computer
• Receive specifies sending process on remote computer + local buffer to place data
– Usually send includes process tag
and receive has rule on tag: match 1, match any
– Synch: when send completes, when buffer free, when request accepted, receive
wait for send
• Send+receive => memory-memory copy, where each each supplies local address,
AND does pair-wise synchronization!
Message Passing Model
• Send + receive => memory-memory copy, synchronization on OS even on
1 processor
• History of message passing:
– Network topology important because could only send to immediate
neighbour
– Typically synchronous, blocking send & receive
– Later DMA with non-blocking sends, DMA for receive into buffer
until processor does receive, and then data is transferred to local
memory
– Later SW libraries to allow arbitrary communication
• Example: IBM SP-2, RS6000 workstations in racks.
Advantages message-passing
communication model
• The hardware can be simpler
• Communication explicit => simpler to understand; in shared memory it can be hard
to know when communicating and when not, and how costly it is
• Explicit communication focuses attention on costly aspect of parallel computation,
sometimes leading to improved structure in multiprocessor program
• Synchronization is naturally associated with sending messages, reducing the
possibility for errors introduced by incorrect synchronization
• Easier to use sender-initiated communication, which may have some advantages in
performance
Applications of Parallel Processing
Summary
■ Serial computers / microprocessors will probably not get much faster - parallelization unavoidable
❑ Pipelining, cache and other optimization strategies for serial computers reaching a plateau
❑ the heat wall has also been reached
■ Application examples
■ Data and functional parallelism
■ Flynn’s taxonomy: SIMD, MISD, MIMD/SPMD
■ Parallel Architectures Intro
❑ Distributed Memory message-passing
❑ Shared Memory
■ Uniform Memory Access
■ Non Uniform Memory Access (distributed shared memory)
■ Parallel program/algorithm examples

More Related Content

What's hot

Inter Process Communication Presentation[1]
Inter Process Communication Presentation[1]Inter Process Communication Presentation[1]
Inter Process Communication Presentation[1]
Ravindra Raju Kolahalam
 
Parallel Processing Presentation2
Parallel Processing Presentation2Parallel Processing Presentation2
Parallel Processing Presentation2
daniyalqureshi712
 
Input output organization
Input output organizationInput output organization
Input output organization
abdulugc
 

What's hot (20)

Computer architecture page replacement algorithms
Computer architecture page replacement algorithmsComputer architecture page replacement algorithms
Computer architecture page replacement algorithms
 
Inter Process Communication
Inter Process CommunicationInter Process Communication
Inter Process Communication
 
Inter Process Communication Presentation[1]
Inter Process Communication Presentation[1]Inter Process Communication Presentation[1]
Inter Process Communication Presentation[1]
 
Memory management ppt
Memory management pptMemory management ppt
Memory management ppt
 
Process synchronization in Operating Systems
Process synchronization in Operating SystemsProcess synchronization in Operating Systems
Process synchronization in Operating Systems
 
Parallel computing persentation
Parallel computing persentationParallel computing persentation
Parallel computing persentation
 
Multi Processors And Multi Computers
 Multi Processors And Multi Computers Multi Processors And Multi Computers
Multi Processors And Multi Computers
 
Parallel Processing Presentation2
Parallel Processing Presentation2Parallel Processing Presentation2
Parallel Processing Presentation2
 
Lecture 1 introduction to parallel and distributed computing
Lecture 1   introduction to parallel and distributed computingLecture 1   introduction to parallel and distributed computing
Lecture 1 introduction to parallel and distributed computing
 
Multiprocessor
MultiprocessorMultiprocessor
Multiprocessor
 
Instruction format
Instruction formatInstruction format
Instruction format
 
Operating system memory management
Operating system memory managementOperating system memory management
Operating system memory management
 
Memory management
Memory managementMemory management
Memory management
 
Distributed Operating System_1
Distributed Operating System_1Distributed Operating System_1
Distributed Operating System_1
 
Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...
Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...
Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...
 
Introduction to Parallel and Distributed Computing
Introduction to Parallel and Distributed ComputingIntroduction to Parallel and Distributed Computing
Introduction to Parallel and Distributed Computing
 
Computer architecture virtual memory
Computer architecture virtual memoryComputer architecture virtual memory
Computer architecture virtual memory
 
Demand paging
Demand pagingDemand paging
Demand paging
 
Input output organization
Input output organizationInput output organization
Input output organization
 
Paging and segmentation
Paging and segmentationPaging and segmentation
Paging and segmentation
 

Similar to Introduction to parallel processing

chapter-18-parallel-processing-multiprocessing (1).ppt
chapter-18-parallel-processing-multiprocessing (1).pptchapter-18-parallel-processing-multiprocessing (1).ppt
chapter-18-parallel-processing-multiprocessing (1).ppt
NANDHINIS109942
 

Similar to Introduction to parallel processing (20)

High performance computing
High performance computingHigh performance computing
High performance computing
 
Introduction 1
Introduction 1Introduction 1
Introduction 1
 
Lecture-7 Main Memroy.pptx
Lecture-7 Main Memroy.pptxLecture-7 Main Memroy.pptx
Lecture-7 Main Memroy.pptx
 
Hpc 6 7
Hpc 6 7Hpc 6 7
Hpc 6 7
 
Memory Management in Operating Systems for all
Memory Management in Operating Systems for allMemory Management in Operating Systems for all
Memory Management in Operating Systems for all
 
Chapter 4
Chapter 4Chapter 4
Chapter 4
 
parallel processing.ppt
parallel processing.pptparallel processing.ppt
parallel processing.ppt
 
chapter-18-parallel-processing-multiprocessing (1).ppt
chapter-18-parallel-processing-multiprocessing (1).pptchapter-18-parallel-processing-multiprocessing (1).ppt
chapter-18-parallel-processing-multiprocessing (1).ppt
 
HDFS_architecture.ppt
HDFS_architecture.pptHDFS_architecture.ppt
HDFS_architecture.ppt
 
Hpc 4 5
Hpc 4 5Hpc 4 5
Hpc 4 5
 
message passing vs shared memory
message passing vs shared memorymessage passing vs shared memory
message passing vs shared memory
 
Multiprocessor_YChen.ppt
Multiprocessor_YChen.pptMultiprocessor_YChen.ppt
Multiprocessor_YChen.ppt
 
Pthread
PthreadPthread
Pthread
 
network ram parallel computing
network ram parallel computingnetwork ram parallel computing
network ram parallel computing
 
Overview of HPC.pptx
Overview of HPC.pptxOverview of HPC.pptx
Overview of HPC.pptx
 
unit 4.pptx
unit 4.pptxunit 4.pptx
unit 4.pptx
 
unit 4.pptx
unit 4.pptxunit 4.pptx
unit 4.pptx
 
22CS201 COA
22CS201 COA22CS201 COA
22CS201 COA
 
Operating system 32 logical versus physical address
Operating system 32 logical versus physical addressOperating system 32 logical versus physical address
Operating system 32 logical versus physical address
 
Multiprocessor.pptx
 Multiprocessor.pptx Multiprocessor.pptx
Multiprocessor.pptx
 

Recently uploaded

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Recently uploaded (20)

VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 

Introduction to parallel processing

  • 1. Introduction to Parallel Processor Chinmay Terse Rahul Agarwal Vivek Ashokan Rahul Nair
  • 2. What is Parallelism? • Parallel processing is a term used to denote simultaneous computation in CPU for the purpose of measuring its computation speeds • Parallel Processing was introduced because the sequential process of executing instructions took a lot of time
  • 4. SIMD MIMD It is also called as Array Processor It is also called as Multiprocessor Here, single stream of instruction is fetched Here, multiple streams of instruction are fetched The instruction stream is fetched by shared memory The instruction streams are fetched by control unit Here, instruction is broadcasted to multiple processing elements(PEs) Here, instruction streams are decoded to get multiple decoded instruction stream (IS)
  • 5. Block Diagram of Tightly Coupled Multiprocessor • Processors share memory • Communicate via that shared memory
  • 6. Block Diagram of Loosely Coupled Multiprocessor
  • 8. Cluster v. SMP • Both provide multiprocessor support to high demand applications. • Both available commercially • SMP: — Easier to manage and control — Closer to single processor systems – Scheduling is main difference – Less physical space – Lower power consumption • Clustering: — Superior incremental & absolute scalability — Less cost — Superior availability – Redundancy
  • 9. Loosely Coupled Multiprocessor Tightly Coupled Multiprocessor Communication takes places through Message Transfer System Communication takes places through PMIN. The processors do not share memory The processors shares memory Each processor has its own local memory Each processor does have its own local memory They are referred to as Distributed Systems They are referred to as Shared Systems Interaction between the processors and IO modules is very low Interaction between the processors and IO modules is very high The processor is directly connected to IO devices. The processor is connected to IO devices through IOPIN There are no unmapped local memory Every processor has unmapped local memory
  • 10. Communication Models • Shared Memory – Processors communicate with shared address space – Easy on small-scale machines – Advantages: • Model of choice for uniprocessors, small-scale MPs • Ease of programming • Lower latency • Easier to use hardware controlled caching • Message passing – Processors have private memories, communicate via messages – Advantages: • Less hardware, easier to design • Focuses attention on costly non-local operations • Can support either SW model on either HW base
  • 11. Shared Address/Memory Model • Communicate via Load and Store – Oldest and most popular model • Based on timesharing: processes on multiple processors vs. sharing single processor • Single virtual and physical address space – Multiple processes can overlap (share), but ALL threads share a process address space • Writes to shared address space by one thread are visible to reads of other threads – Usual model: share code, private stack, some shared heap, some private heap
  • 12. Advantages shared-memory communication model • Compatibility with SMP hardware • Ease of programming when communication patterns are complex or vary dynamically during execution • Ability to develop apps using familiar SMP model, attention only on performance critical accesses • Lower communication overhead, better use of BW for small items, due to implicit communication and memory mapping to implement protection in hardware, rather than through I/O system • HW-controlled caching to reduce remote comm. by caching of all data, both shared and private.
  • 13. Shared Address Model Summary • Each process can name all data it shares with other processes • Data transfer via load and store • Data size: byte, word, ... or cache blocks • Uses virtual memory to map virtual to local or remote physical • Memory hierarchy model applies: now communication moves data to local proc. cache (as load moves data from memory to cache) – Latency, BW (cache block?), scalability when communicate?
  • 14. Message Passing Model • Whole computers (CPU, memory, I/O devices) communicate as explicit I/O operations • Send specifies local buffer + receiving process on remote computer • Receive specifies sending process on remote computer + local buffer to place data – Usually send includes process tag and receive has rule on tag: match 1, match any – Synch: when send completes, when buffer free, when request accepted, receive wait for send • Send+receive => memory-memory copy, where each each supplies local address, AND does pair-wise synchronization!
  • 15. Message Passing Model • Send + receive => memory-memory copy, synchronization on OS even on 1 processor • History of message passing: – Network topology important because could only send to immediate neighbour – Typically synchronous, blocking send & receive – Later DMA with non-blocking sends, DMA for receive into buffer until processor does receive, and then data is transferred to local memory – Later SW libraries to allow arbitrary communication • Example: IBM SP-2, RS6000 workstations in racks.
  • 16. Advantages message-passing communication model • The hardware can be simpler • Communication explicit => simpler to understand; in shared memory it can be hard to know when communicating and when not, and how costly it is • Explicit communication focuses attention on costly aspect of parallel computation, sometimes leading to improved structure in multiprocessor program • Synchronization is naturally associated with sending messages, reducing the possibility for errors introduced by incorrect synchronization • Easier to use sender-initiated communication, which may have some advantages in performance
  • 18.
  • 19.
  • 20.
  • 21. Summary ■ Serial computers / microprocessors will probably not get much faster - parallelization unavoidable ❑ Pipelining, cache and other optimization strategies for serial computers reaching a plateau ❑ the heat wall has also been reached ■ Application examples ■ Data and functional parallelism ■ Flynn’s taxonomy: SIMD, MISD, MIMD/SPMD ■ Parallel Architectures Intro ❑ Distributed Memory message-passing ❑ Shared Memory ■ Uniform Memory Access ■ Non Uniform Memory Access (distributed shared memory) ■ Parallel program/algorithm examples