SlideShare a Scribd company logo
▣ A programming model is a collection of program
abstraction providing a programmer a simplified
and transparent view of computer H/W and S/W.
▣ Parallel programming model is designed for vector
computers.
▣ Fundamental issues in parallel programming.
▣ Creation, suspension, reactivation, termination.
Five model are designed that exploits
parallelism-:
▣ Shared-variable model.
▣ Message-passing model.
▣ Data parallel model.
▣ Object oriented model.
▣ Functional and logic
model.
▣ In shared variable modelparallelism
depends on how IPC is implemented.
▣ IPC implemented in parallel
programming by two ways.
▣ IPC using shared variable.
▣ IPC using message passing.
▣ IPC with shared variable
▣ IPC with message passing
▣ Critical section.
▣ Memory consistency.
▣ Atomicity with memory operation.
▣ Fast synchronization.
▣ Shared data structure.
▣ Two process communicate with each
other by passing message through a network.
▣ Delay caused by message passing
is much longer than shared variable model in a
same memory.
▣ Two message passing approach are introduced
here.
1. Synchronous message passing-:
▣ Its synchronizes the sender and
receiver process with time and space just like
telephone call.
▣ No shared memory.
▣ No need of mutual exclusion.
▣ No buffer are used in communication channel.
▣ It can be blocked by channel being busy.
2. Asynchronous message passing-:
▣ Does not need to synchronize the sender and
receiver in time and space.
▣ Non blocking can be achieved.
▣ Buffer are used to hold the message along the path of
connecting channel.
▣ Message passing programming is gradually
changing, once the virtual memory from all nodes
are combined.
▣ It require the use of pre-distributed data set.
▣ Interconnected data structure are also needed to
facilitate data exchange operation.
▣ It emphasizes local computation and data routing
operation such as permutation, replication, reduction
and parallel prefix.
▣ It can be implemented on either SIMD or SPMD
multicomputer, depending on the grain size of
program.
parallel programming Models in system(1).pptx
▣ Object are created and manipulated dynamically.
▣ Processing is performed using object.
▣ Concurrent programming model are built up from
low level object such as processes, queue and
semaphore.
▣ Object Oriented model achieve parallelism using
three methods.
▣ Pipeline concurrency.
▣ Divide and conquer concurrency.
▣ Co-operating problem solving.
▣ Two language-oriented programming for
parallel processing are purposed.
▣ Functional programming modelsuch as
LISP, SISAL, Strand 88.
▣ Logic programming model as prolog.
▣ Basedon predicate logic, logic programming
is suitable for solving large database queries.
▣ Language feature for parallel programming into six
categories according to functionality.
Optimization features
▣ Used for program restructuringand
compilation directives.
▣ Sequentially coded program into parallel code.
▣ Automated parallelization.
▣ Semi-automated parallelization.
Availability feature
▣ Its use to enhance the user- friendliness.
▣ Make language portable to large class
of parallel computers.
▣ Scalability.
▣ Compatibility.
▣ Portability.
Synchronization/ communication feature
▣ Shared variable for IPC.
▣ Single assignment language.
▣ Send/receive for message passing.
▣ Logical shared memory such as
the row space in Linda.
▣ Remote procedure call.
▣ Data flow languages such as id.
.
Control of parallelism
▣ Coarse, medium or fine grain.
▣ Explicit versus implicit
parallelism.
▣ Loop parallelism in iteration.
▣ Shared task queue.
▣ Divide and conquer paradigm.
▣ Shared abstract data type.
Data parallelism feature
▣ It specified how data are accessed and
distributed
▣ Runtime automatic decomposition.
▣ Mapping specification.
▣ Virtual processor support.
▣ Direct access to shared data.
Process management features
▣ These feature are needed to support
the efficient creation of parallel processes.
▣ Implementation of multithreading or
multitasking.
▣ Dynamic process creation at runtime.
▣ Automatic load balancing.
▣ Light weight processes.
▣ Special language construct and data array
expression for exploiting parallelism in program.
▣ First is FORTRAN 90 array notation.
▣ Parallel flow control is achieve using do across and
do all type of keyword which is use in the
FORTRAN 90.
▣ Same we also use FORK and JOIN method.
▣ The role of compiler to remove
the burden of program optimization and
code generation.
▣ A parallelizing compiler consist of
the three major phases.
▣ Flow analysis.
▣ Optimization.
▣ Code generation.
“Compilation phases in parallel code generation”
THANK YOU

More Related Content

PDF
Parallel programming model, language and compiler in ACA.
PPT
Unit5
PPT
01-MessagePassingFundamentals.ppt
PDF
Advanced computer architecture unit 5
PPTX
Parallel programming model
PDF
Lec+3-Introduction-to-Distributed-Systems.pdf
PDF
Lecture 2 more about parallel computing
PPTX
openmp final2.pptx
Parallel programming model, language and compiler in ACA.
Unit5
01-MessagePassingFundamentals.ppt
Advanced computer architecture unit 5
Parallel programming model
Lec+3-Introduction-to-Distributed-Systems.pdf
Lecture 2 more about parallel computing
openmp final2.pptx

Similar to parallel programming Models in system(1).pptx (20)

PPT
parallel programming models
PPTX
Data Parallel and Object Oriented Model
PPT
Lecture 2
PDF
Lecture 1 introduction to parallel and distributed computing
PPTX
Parallelization using open mp
PPTX
Basic concepts of parallelization
PPTX
Lec 2 (parallel design and programming)
PPTX
Parallel Programing Model
PPTX
Wondershare filmora Crack License 100% Working ✅
PPTX
Unit 2.2 Parallel programming architecture .pptx
PPTX
Download Wondershare Filmora 14 Crack License
PPTX
Operating system memory management
PPT
Migration To Multi Core - Parallel Programming Models
PPT
Introduction 1
PDF
The Parallel Architecture Approach, Single Program Multiple Data (Spmd) Imple...
PPTX
Concurrency Programming in Java - 01 - Introduction to Concurrency Programming
PPTX
Parallel & Distributed processing
PDF
Aca2 10 11
PPTX
Cc module 3.pptx
PDF
Building A Linux Cluster Using Raspberry PI #1!
parallel programming models
Data Parallel and Object Oriented Model
Lecture 2
Lecture 1 introduction to parallel and distributed computing
Parallelization using open mp
Basic concepts of parallelization
Lec 2 (parallel design and programming)
Parallel Programing Model
Wondershare filmora Crack License 100% Working ✅
Unit 2.2 Parallel programming architecture .pptx
Download Wondershare Filmora 14 Crack License
Operating system memory management
Migration To Multi Core - Parallel Programming Models
Introduction 1
The Parallel Architecture Approach, Single Program Multiple Data (Spmd) Imple...
Concurrency Programming in Java - 01 - Introduction to Concurrency Programming
Parallel & Distributed processing
Aca2 10 11
Cc module 3.pptx
Building A Linux Cluster Using Raspberry PI #1!
Ad

More from sayalee7 (7)

PPTX
break continue and pass statement in python.pptx
PPTX
Unit 4 Introduction to internet of Things.pptx
PDF
Unit 4 Internet of Things communication models.pdf
PPTX
Unit 1.2 Parallel Programming in HPC.pptx
PPTX
3-tierdatawarehouse in data analytics.pptx
PPTX
Unit 1.A.Introduction to Knowledge Discovery Data Mining (1).pptx
PPTX
Unit 1.2 Basic Statistical Descriptions of Data (2).pptx
break continue and pass statement in python.pptx
Unit 4 Introduction to internet of Things.pptx
Unit 4 Internet of Things communication models.pdf
Unit 1.2 Parallel Programming in HPC.pptx
3-tierdatawarehouse in data analytics.pptx
Unit 1.A.Introduction to Knowledge Discovery Data Mining (1).pptx
Unit 1.2 Basic Statistical Descriptions of Data (2).pptx
Ad

Recently uploaded (20)

DOCX
573137875-Attendance-Management-System-original
PDF
Digital Logic Computer Design lecture notes
PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PPTX
Lecture Notes Electrical Wiring System Components
PPTX
OOP with Java - Java Introduction (Basics)
PDF
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
PPTX
Construction Project Organization Group 2.pptx
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PDF
PPT on Performance Review to get promotions
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PPTX
additive manufacturing of ss316l using mig welding
PPTX
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PPTX
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PPTX
Geodesy 1.pptx...............................................
PPTX
Welding lecture in detail for understanding
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PPTX
Internet of Things (IOT) - A guide to understanding
573137875-Attendance-Management-System-original
Digital Logic Computer Design lecture notes
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
Lecture Notes Electrical Wiring System Components
OOP with Java - Java Introduction (Basics)
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
Construction Project Organization Group 2.pptx
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PPT on Performance Review to get promotions
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
additive manufacturing of ss316l using mig welding
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
Geodesy 1.pptx...............................................
Welding lecture in detail for understanding
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
Internet of Things (IOT) - A guide to understanding

parallel programming Models in system(1).pptx

  • 1. ▣ A programming model is a collection of program abstraction providing a programmer a simplified and transparent view of computer H/W and S/W. ▣ Parallel programming model is designed for vector computers. ▣ Fundamental issues in parallel programming. ▣ Creation, suspension, reactivation, termination.
  • 2. Five model are designed that exploits parallelism-: ▣ Shared-variable model. ▣ Message-passing model. ▣ Data parallel model. ▣ Object oriented model. ▣ Functional and logic model.
  • 3. ▣ In shared variable modelparallelism depends on how IPC is implemented. ▣ IPC implemented in parallel programming by two ways. ▣ IPC using shared variable. ▣ IPC using message passing.
  • 4. ▣ IPC with shared variable ▣ IPC with message passing
  • 5. ▣ Critical section. ▣ Memory consistency. ▣ Atomicity with memory operation. ▣ Fast synchronization. ▣ Shared data structure.
  • 6. ▣ Two process communicate with each other by passing message through a network. ▣ Delay caused by message passing is much longer than shared variable model in a same memory. ▣ Two message passing approach are introduced here.
  • 7. 1. Synchronous message passing-: ▣ Its synchronizes the sender and receiver process with time and space just like telephone call. ▣ No shared memory. ▣ No need of mutual exclusion. ▣ No buffer are used in communication channel. ▣ It can be blocked by channel being busy.
  • 8. 2. Asynchronous message passing-: ▣ Does not need to synchronize the sender and receiver in time and space. ▣ Non blocking can be achieved. ▣ Buffer are used to hold the message along the path of connecting channel. ▣ Message passing programming is gradually changing, once the virtual memory from all nodes are combined.
  • 9. ▣ It require the use of pre-distributed data set. ▣ Interconnected data structure are also needed to facilitate data exchange operation. ▣ It emphasizes local computation and data routing operation such as permutation, replication, reduction and parallel prefix. ▣ It can be implemented on either SIMD or SPMD multicomputer, depending on the grain size of program.
  • 11. ▣ Object are created and manipulated dynamically. ▣ Processing is performed using object. ▣ Concurrent programming model are built up from low level object such as processes, queue and semaphore. ▣ Object Oriented model achieve parallelism using three methods.
  • 12. ▣ Pipeline concurrency. ▣ Divide and conquer concurrency. ▣ Co-operating problem solving.
  • 13. ▣ Two language-oriented programming for parallel processing are purposed. ▣ Functional programming modelsuch as LISP, SISAL, Strand 88. ▣ Logic programming model as prolog. ▣ Basedon predicate logic, logic programming is suitable for solving large database queries.
  • 14. ▣ Language feature for parallel programming into six categories according to functionality. Optimization features ▣ Used for program restructuringand compilation directives. ▣ Sequentially coded program into parallel code. ▣ Automated parallelization. ▣ Semi-automated parallelization.
  • 15. Availability feature ▣ Its use to enhance the user- friendliness. ▣ Make language portable to large class of parallel computers. ▣ Scalability. ▣ Compatibility. ▣ Portability.
  • 16. Synchronization/ communication feature ▣ Shared variable for IPC. ▣ Single assignment language. ▣ Send/receive for message passing. ▣ Logical shared memory such as the row space in Linda. ▣ Remote procedure call. ▣ Data flow languages such as id. .
  • 17. Control of parallelism ▣ Coarse, medium or fine grain. ▣ Explicit versus implicit parallelism. ▣ Loop parallelism in iteration. ▣ Shared task queue. ▣ Divide and conquer paradigm. ▣ Shared abstract data type.
  • 18. Data parallelism feature ▣ It specified how data are accessed and distributed ▣ Runtime automatic decomposition. ▣ Mapping specification. ▣ Virtual processor support. ▣ Direct access to shared data.
  • 19. Process management features ▣ These feature are needed to support the efficient creation of parallel processes. ▣ Implementation of multithreading or multitasking. ▣ Dynamic process creation at runtime. ▣ Automatic load balancing. ▣ Light weight processes.
  • 20. ▣ Special language construct and data array expression for exploiting parallelism in program. ▣ First is FORTRAN 90 array notation. ▣ Parallel flow control is achieve using do across and do all type of keyword which is use in the FORTRAN 90. ▣ Same we also use FORK and JOIN method.
  • 21. ▣ The role of compiler to remove the burden of program optimization and code generation. ▣ A parallelizing compiler consist of the three major phases. ▣ Flow analysis. ▣ Optimization. ▣ Code generation.
  • 22. “Compilation phases in parallel code generation”