Professional Documents
Culture Documents
COMPUTING
B S RAMANJANEYULU
1
Presentation Outline
3
Sequential vs. Parallel
Sequential
Parallel
4
Sequential vs. Parallel (Contd…)
5
The Need For Faster Machines
6
Data Parallelism
Example:
if CPU=“1" then
start=1
end=50
else if CPU=“2" then
start=51
end=100
end if
do
i = start , end
Task on d(i)
end do
7
Task Parallelism
Task parallelism
Example:
if CPU=“1" then
do “Task 1”
else if CPU=“2" then
do “Task 2”
end if
8
Definition
Definition :
9
Sequential vs. Parallel Computing
SEQUENTIAL COMPUTING
Fetch/Store
Compute
PARALLEL COMPUTING
Fetch/Store
Compute
communicate
10
Execution Time
• Sequential system
– Execution time as a function of size of input
• Parallel system
– Execution time as a function of input size,
and number of processors used
11
Terminology of Parallel Computing
12
Terminology of Parallel Computing
Throughput (in FLOPS): (Contd…)
13
Requirements for Parallel Computing
Multiple processors
(The workers)
Network
(Link between workers)
OS support
14
Requirements for Parallel Computing (Contd…)
15
Issues in Parallel Computing
16
Designing Parallel Algorithms
17
Decomposition Techniques
Decomposition Techniques
18
Decomposition Techniques (Contd…)
19
Success depends on the combination of
20
Architectural Taxonomy
21
SISD Model features
Not a parallel computer
Conventional serial, scalar von Neumann computer
A single instruction is issued in each clock cycle
Each instruction operates on a single (scalar) data element
Performance measured in MIPS
Examples: most PCs and single CPU workstations
22
SIMD Model features
23
MIMD Model features
25
MIMD Classification
26
Parallel Computer Architecture Memory Models
27
Hybrid Memory
Symmetric Multiprocessors (SMP)
28
Symmetric Multiprocessors (SMP)
(Contd…)
29
SMP, MPP and clusters
30
Competing Architectures
31
What is a Cluster?
32
Motivation for using Clusters
33
Cluster Computer Architecture
34
Components of Cluster Computers
• Multiple High Performance Computers
– PCs
– Workstations
– SMPs
• State-of-the-art Operating Systems
– Layered
– Micro-kernel based
• High Performance Networks/Switches
– Gigabit Ethernet
– PARAMNet
– Myrinet
• Network Interface Cards (NICs)
• Fast Communication Protocols and Services
– Active Messages (AM)
– Virtual Interface Architecture (VIA)
35
Components of Cluster Computers (Contd…)
– Sequential
– Parallel or Distributed
36
Parallel programming models -- MPI, PVM and OpenMP
Standard Message Passing interface (MPI) i.e. SUN MPI, IBM MPI,
Public Domain MPI and C-DAC’s own MPI (CMPI).
38
References
• http://www.llnl.gov/computing/tutorials/parallel_comp/
• Tutorials located in the Maui High Performance
Computing Center's "SP Parallel Programming
Workshop".
• Linux Parallel procesing HOW TO from
http://www.tldp.org/HOWTO/Parallel-Processing-
HOWTO.html
39
Thank you.
40