Unit 2.2 Parallel Programming Models
Unit 2.2 Parallel Programming Models
.
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