SlideShare a Scribd company logo
21
Most read
22
Most read
23
Most read
Parallel programming model, language and compiler in ACA.
 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 model parallelism 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.
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.
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.
 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.
 C-OOP 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 model such as LISP,
SISAL, Strand 88.
 Logic programming model as prolog.
 Based on 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 restructuring and 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

What's hot (20)

Parallel Programing Model
Parallel Programing Model
Adlin Jeena
 
Aca2 10 11
Aca2 10 11
Sumit Mittu
 
distributed shared memory
distributed shared memory
Ashish Kumar
 
program partitioning and scheduling IN Advanced Computer Architecture
program partitioning and scheduling IN Advanced Computer Architecture
Pankaj Kumar Jain
 
Hardware and Software parallelism
Hardware and Software parallelism
prashantdahake
 
Implementation levels of virtualization
Implementation levels of virtualization
Gokulnath S
 
Resource management
Resource management
Dr Sandeep Kumar Poonia
 
Introduction to Parallel and Distributed Computing
Introduction to Parallel and Distributed Computing
Sayed Chhattan Shah
 
Distributed shred memory architecture
Distributed shred memory architecture
Maulik Togadiya
 
program flow mechanisms, advanced computer architecture
program flow mechanisms, advanced computer architecture
Pankaj Kumar Jain
 
parallel programming models
parallel programming models
Swetha S
 
Parallel computing and its applications
Parallel computing and its applications
Burhan Ahmed
 
Parallel programming model
Parallel programming model
easy notes
 
System interconnect architecture
System interconnect architecture
Gagan Kumar
 
Distributed Systems
Distributed Systems
Rupsee
 
Distributed web based systems
Distributed web based systems
Reza Gh
 
system interconnect architectures in ACA
system interconnect architectures in ACA
Pankaj Kumar Jain
 
5. IO virtualization
5. IO virtualization
Hwanju Kim
 
ADVANCED COMPUTER ARCHITECTURE AND PARALLEL PROCESSING
ADVANCED COMPUTER ARCHITECTURE AND PARALLEL PROCESSING
Zena Abo-Altaheen
 
Feng’s classification
Feng’s classification
Narayan Kandel
 
Parallel Programing Model
Parallel Programing Model
Adlin Jeena
 
distributed shared memory
distributed shared memory
Ashish Kumar
 
program partitioning and scheduling IN Advanced Computer Architecture
program partitioning and scheduling IN Advanced Computer Architecture
Pankaj Kumar Jain
 
Hardware and Software parallelism
Hardware and Software parallelism
prashantdahake
 
Implementation levels of virtualization
Implementation levels of virtualization
Gokulnath S
 
Introduction to Parallel and Distributed Computing
Introduction to Parallel and Distributed Computing
Sayed Chhattan Shah
 
Distributed shred memory architecture
Distributed shred memory architecture
Maulik Togadiya
 
program flow mechanisms, advanced computer architecture
program flow mechanisms, advanced computer architecture
Pankaj Kumar Jain
 
parallel programming models
parallel programming models
Swetha S
 
Parallel computing and its applications
Parallel computing and its applications
Burhan Ahmed
 
Parallel programming model
Parallel programming model
easy notes
 
System interconnect architecture
System interconnect architecture
Gagan Kumar
 
Distributed Systems
Distributed Systems
Rupsee
 
Distributed web based systems
Distributed web based systems
Reza Gh
 
system interconnect architectures in ACA
system interconnect architectures in ACA
Pankaj Kumar Jain
 
5. IO virtualization
5. IO virtualization
Hwanju Kim
 
ADVANCED COMPUTER ARCHITECTURE AND PARALLEL PROCESSING
ADVANCED COMPUTER ARCHITECTURE AND PARALLEL PROCESSING
Zena Abo-Altaheen
 
Feng’s classification
Feng’s classification
Narayan Kandel
 

Viewers also liked (20)

Loop parallelization & pipelining
Loop parallelization & pipelining
jagrat123
 
Parallel Programming
Parallel Programming
Uday Sharma
 
Lecture 1
Lecture 1
Mr SMAK
 
Code Optimization
Code Optimization
guest9f8315
 
Comp architecture : branch prediction
Comp architecture : branch prediction
rinnocente
 
Program and Network Properties
Program and Network Properties
Beekrum Duwal
 
Parallel language & compilers
Parallel language & compilers
dikshagupta111
 
M.Tech: Advanced Computer Architecture Assignment II
M.Tech: Advanced Computer Architecture Assignment II
Vijayananda Mohire
 
Mefa unit iii material(market stuructures and pricing methods)
Mefa unit iii material(market stuructures and pricing methods)
Dr. Durgaprasad Navulla
 
Tomasulo Algorithm
Tomasulo Algorithm
Farwa Ansari
 
Instruction Level Parallelism Compiler optimization Techniques Anna Universit...
Instruction Level Parallelism Compiler optimization Techniques Anna Universit...
Dr.K. Thirunadana Sikamani
 
Parallel computing persentation
Parallel computing persentation
VIKAS SINGH BHADOURIA
 
Vol1
Vol1
ashish kumar
 
Advanced Comuter Architecture Ch6 Problem Solutions
Advanced Comuter Architecture Ch6 Problem Solutions
Joe Christensen
 
Computer architecture kai hwang
Computer architecture kai hwang
Sumedha
 
Lecture 3
Lecture 3
Mr SMAK
 
Cache coherence problem and its solutions
Cache coherence problem and its solutions
Majid Saleem
 
Pipelining and ILP (Instruction Level Parallelism)
Pipelining and ILP (Instruction Level Parallelism)
Dr. A. B. Shinde
 
Lecture 6
Lecture 6
Mr SMAK
 
Instruction pipeline: Computer Architecture
Instruction pipeline: Computer Architecture
InteX Research Lab
 
Loop parallelization & pipelining
Loop parallelization & pipelining
jagrat123
 
Parallel Programming
Parallel Programming
Uday Sharma
 
Lecture 1
Lecture 1
Mr SMAK
 
Code Optimization
Code Optimization
guest9f8315
 
Comp architecture : branch prediction
Comp architecture : branch prediction
rinnocente
 
Program and Network Properties
Program and Network Properties
Beekrum Duwal
 
Parallel language & compilers
Parallel language & compilers
dikshagupta111
 
M.Tech: Advanced Computer Architecture Assignment II
M.Tech: Advanced Computer Architecture Assignment II
Vijayananda Mohire
 
Mefa unit iii material(market stuructures and pricing methods)
Mefa unit iii material(market stuructures and pricing methods)
Dr. Durgaprasad Navulla
 
Tomasulo Algorithm
Tomasulo Algorithm
Farwa Ansari
 
Instruction Level Parallelism Compiler optimization Techniques Anna Universit...
Instruction Level Parallelism Compiler optimization Techniques Anna Universit...
Dr.K. Thirunadana Sikamani
 
Advanced Comuter Architecture Ch6 Problem Solutions
Advanced Comuter Architecture Ch6 Problem Solutions
Joe Christensen
 
Computer architecture kai hwang
Computer architecture kai hwang
Sumedha
 
Lecture 3
Lecture 3
Mr SMAK
 
Cache coherence problem and its solutions
Cache coherence problem and its solutions
Majid Saleem
 
Pipelining and ILP (Instruction Level Parallelism)
Pipelining and ILP (Instruction Level Parallelism)
Dr. A. B. Shinde
 
Lecture 6
Lecture 6
Mr SMAK
 
Instruction pipeline: Computer Architecture
Instruction pipeline: Computer Architecture
InteX Research Lab
 
Ad

Similar to Parallel programming model, language and compiler in ACA. (20)

Advanced computer architecture unit 5
Advanced computer architecture unit 5
Kunal Bangar
 
Basic concepts of parallelization
Basic concepts of parallelization
snegacmr
 
parallel programming Models in system(1).pptx
parallel programming Models in system(1).pptx
sayalee7
 
Unit5
Unit5
Sneha Soni
 
Aq4301224227
Aq4301224227
IJERA Editor
 
01-MessagePassingFundamentals.ppt
01-MessagePassingFundamentals.ppt
HarshitPal37
 
Parallelization using open mp
Parallelization using open mp
ranjit banshpal
 
Doppl Development Introduction
Doppl Development Introduction
Diego Perini
 
The Parallel Architecture Approach, Single Program Multiple Data (Spmd) Imple...
The Parallel Architecture Approach, Single Program Multiple Data (Spmd) Imple...
ijceronline
 
LOCK-FREE PARALLEL ACCESS COLLECTIONS
LOCK-FREE PARALLEL ACCESS COLLECTIONS
ijdpsjournal
 
Lock free parallel access collections
Lock free parallel access collections
ijdpsjournal
 
Concurrent Matrix Multiplication on Multi-core Processors
Concurrent Matrix Multiplication on Multi-core Processors
CSCJournals
 
Parallel computing High performance computing .pdf
Parallel computing High performance computing .pdf
LadoKranjcevic1
 
Compiler design
Compiler design
renukarenuka9
 
Building A Linux Cluster Using Raspberry PI #1!
Building A Linux Cluster Using Raspberry PI #1!
A Jorge Garcia
 
Parallel Programming Models: Shared variable model, Message passing model, Da...
Parallel Programming Models: Shared variable model, Message passing model, Da...
SHASHIKANT346021
 
Mpi.net running wizard
Mpi.net running wizard
Ahmed Imair
 
Performance Analysis of Parallel Algorithms on Multi-core System using OpenMP
Performance Analysis of Parallel Algorithms on Multi-core System using OpenMP
IJCSEIT Journal
 
Automatic Compilation Of MATLAB Programs For Synergistic Execution On Heterog...
Automatic Compilation Of MATLAB Programs For Synergistic Execution On Heterog...
Sara Alvarez
 
Towards high performance computing(hpc) through parallel programming paradigm...
Towards high performance computing(hpc) through parallel programming paradigm...
ijpla
 
Advanced computer architecture unit 5
Advanced computer architecture unit 5
Kunal Bangar
 
Basic concepts of parallelization
Basic concepts of parallelization
snegacmr
 
parallel programming Models in system(1).pptx
parallel programming Models in system(1).pptx
sayalee7
 
01-MessagePassingFundamentals.ppt
01-MessagePassingFundamentals.ppt
HarshitPal37
 
Parallelization using open mp
Parallelization using open mp
ranjit banshpal
 
Doppl Development Introduction
Doppl Development Introduction
Diego Perini
 
The Parallel Architecture Approach, Single Program Multiple Data (Spmd) Imple...
The Parallel Architecture Approach, Single Program Multiple Data (Spmd) Imple...
ijceronline
 
LOCK-FREE PARALLEL ACCESS COLLECTIONS
LOCK-FREE PARALLEL ACCESS COLLECTIONS
ijdpsjournal
 
Lock free parallel access collections
Lock free parallel access collections
ijdpsjournal
 
Concurrent Matrix Multiplication on Multi-core Processors
Concurrent Matrix Multiplication on Multi-core Processors
CSCJournals
 
Parallel computing High performance computing .pdf
Parallel computing High performance computing .pdf
LadoKranjcevic1
 
Building A Linux Cluster Using Raspberry PI #1!
Building A Linux Cluster Using Raspberry PI #1!
A Jorge Garcia
 
Parallel Programming Models: Shared variable model, Message passing model, Da...
Parallel Programming Models: Shared variable model, Message passing model, Da...
SHASHIKANT346021
 
Mpi.net running wizard
Mpi.net running wizard
Ahmed Imair
 
Performance Analysis of Parallel Algorithms on Multi-core System using OpenMP
Performance Analysis of Parallel Algorithms on Multi-core System using OpenMP
IJCSEIT Journal
 
Automatic Compilation Of MATLAB Programs For Synergistic Execution On Heterog...
Automatic Compilation Of MATLAB Programs For Synergistic Execution On Heterog...
Sara Alvarez
 
Towards high performance computing(hpc) through parallel programming paradigm...
Towards high performance computing(hpc) through parallel programming paradigm...
ijpla
 
Ad

Recently uploaded (20)

Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Safe Software
 
Oracle Cloud and AI Specialization Program
Oracle Cloud and AI Specialization Program
VICTOR MAESTRE RAMIREZ
 
National Fuels Treatments Initiative: Building a Seamless Map of Hazardous Fu...
National Fuels Treatments Initiative: Building a Seamless Map of Hazardous Fu...
Safe Software
 
Down the Rabbit Hole – Solving 5 Training Roadblocks
Down the Rabbit Hole – Solving 5 Training Roadblocks
Rustici Software
 
Your startup on AWS - How to architect and maintain a Lean and Mean account
Your startup on AWS - How to architect and maintain a Lean and Mean account
angelo60207
 
ENERGY CONSUMPTION CALCULATION IN ENERGY-EFFICIENT AIR CONDITIONER.pdf
ENERGY CONSUMPTION CALCULATION IN ENERGY-EFFICIENT AIR CONDITIONER.pdf
Muhammad Rizwan Akram
 
cnc-drilling-dowel-inserting-machine-drillteq-d-510-english.pdf
cnc-drilling-dowel-inserting-machine-drillteq-d-510-english.pdf
AmirStern2
 
Supporting the NextGen 911 Digital Transformation with FME
Supporting the NextGen 911 Digital Transformation with FME
Safe Software
 
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
FIDO Alliance
 
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
FIDO Alliance
 
Data Validation and System Interoperability
Data Validation and System Interoperability
Safe Software
 
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
NTT DATA Technology & Innovation
 
Kubernetes Security Act Now Before It’s Too Late
Kubernetes Security Act Now Before It’s Too Late
Michael Furman
 
Artificial Intelligence in the Nonprofit Boardroom.pdf
Artificial Intelligence in the Nonprofit Boardroom.pdf
OnBoard
 
PyData - Graph Theory for Multi-Agent Integration
PyData - Graph Theory for Multi-Agent Integration
barqawicloud
 
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
biswajitbanerjee38
 
Crypto Super 500 - 14th Report - June2025.pdf
Crypto Super 500 - 14th Report - June2025.pdf
Stephen Perrenod
 
Reducing Conflicts and Increasing Safety Along the Cycling Networks of East-F...
Reducing Conflicts and Increasing Safety Along the Cycling Networks of East-F...
Safe Software
 
Floods in Valencia: Two FME-Powered Stories of Data Resilience
Floods in Valencia: Two FME-Powered Stories of Data Resilience
Safe Software
 
High Availability On-Premises FME Flow.pdf
High Availability On-Premises FME Flow.pdf
Safe Software
 
Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Safe Software
 
Oracle Cloud and AI Specialization Program
Oracle Cloud and AI Specialization Program
VICTOR MAESTRE RAMIREZ
 
National Fuels Treatments Initiative: Building a Seamless Map of Hazardous Fu...
National Fuels Treatments Initiative: Building a Seamless Map of Hazardous Fu...
Safe Software
 
Down the Rabbit Hole – Solving 5 Training Roadblocks
Down the Rabbit Hole – Solving 5 Training Roadblocks
Rustici Software
 
Your startup on AWS - How to architect and maintain a Lean and Mean account
Your startup on AWS - How to architect and maintain a Lean and Mean account
angelo60207
 
ENERGY CONSUMPTION CALCULATION IN ENERGY-EFFICIENT AIR CONDITIONER.pdf
ENERGY CONSUMPTION CALCULATION IN ENERGY-EFFICIENT AIR CONDITIONER.pdf
Muhammad Rizwan Akram
 
cnc-drilling-dowel-inserting-machine-drillteq-d-510-english.pdf
cnc-drilling-dowel-inserting-machine-drillteq-d-510-english.pdf
AmirStern2
 
Supporting the NextGen 911 Digital Transformation with FME
Supporting the NextGen 911 Digital Transformation with FME
Safe Software
 
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
FIDO Alliance
 
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
FIDO Alliance
 
Data Validation and System Interoperability
Data Validation and System Interoperability
Safe Software
 
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
NTT DATA Technology & Innovation
 
Kubernetes Security Act Now Before It’s Too Late
Kubernetes Security Act Now Before It’s Too Late
Michael Furman
 
Artificial Intelligence in the Nonprofit Boardroom.pdf
Artificial Intelligence in the Nonprofit Boardroom.pdf
OnBoard
 
PyData - Graph Theory for Multi-Agent Integration
PyData - Graph Theory for Multi-Agent Integration
barqawicloud
 
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
biswajitbanerjee38
 
Crypto Super 500 - 14th Report - June2025.pdf
Crypto Super 500 - 14th Report - June2025.pdf
Stephen Perrenod
 
Reducing Conflicts and Increasing Safety Along the Cycling Networks of East-F...
Reducing Conflicts and Increasing Safety Along the Cycling Networks of East-F...
Safe Software
 
Floods in Valencia: Two FME-Powered Stories of Data Resilience
Floods in Valencia: Two FME-Powered Stories of Data Resilience
Safe Software
 
High Availability On-Premises FME Flow.pdf
High Availability On-Premises FME Flow.pdf
Safe Software
 

Parallel programming model, language and compiler in ACA.

  • 2.  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.
  • 3. Five model are designed that exploits parallelism-:  Shared-variable model.  Message-passing model.  Data parallel model.  Object oriented model.  Functional and logic model.
  • 4.  In shared variable model parallelism depends on how IPC is implemented.  IPC implemented in parallel programming by two ways.  IPC using shared variable.  IPC using message passing.
  • 5.  IPC with shared variable  IPC with message passing
  • 6.  Critical section.  Memory consistency.  Atomicity with memory operation.  Fast synchronization.  Shared data structure.
  • 7.  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.
  • 8. 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.
  • 9. 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.
  • 10.  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.  C-OOP 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 model such as LISP, SISAL, Strand 88.  Logic programming model as prolog.  Based on 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 restructuring and 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”