Pipelining
Pipelining
KR Chowdhary
Professor & Head
Email: [email protected]
webpage: krchowdhary.com
P1 M1
Control unit Processor memory
b data stream n n n
b b b
CU b b b
b b
Instr. stream data stream
2. SIMD
Pn Mn
Program loaded
from front end data stream
Figure 2: MIMD Architecture.
One of the parallel processing class that does not fit into this classification is
pipeline processing.
Parallel Processing:
◮ Increasing speed by doing many things in parallel.
◮ Let P is a sequential processor processing the task T in sequential
manner. If T is partitioned into n subtasks T1 , T2 , . . . , Tn of appox. same
′
size, then a processor P (say) having n processors can be programmed so
that all the subtasks of T can execute in parallel.
′
◮ Then P executes n times faster than P.
◮ A failure of CPU is fatal to a sequential processor, but not in the case of
parallel processor.
◮ Some of the applications of parallel computer (processors) are:
1. Expert system for AI
2. Fluid flow analysis,
3. Seismic data analysis
4. Long range weather forecasting,
5. Computer Assisted tomography
6. Nuclear reactor modeling,
7. Visual image processing
8. VLSI design
◮ The typical characteristic of parallel computing are: vast amount of
computation, floating point arithmetic, vast number of operands.
P1 P2 Pn
b b b
serial IO -operations(send-receive)
X = (XM , XE ), Y = (YM , YE ) X +Y
R1 R2
Multiplier R4
R3
Adder
R5
R1 ← Ai , R2 ← Bi ; input Ai , Bi
R3 ← R1 ∗ R2 , R4 ← C ; multiply and i/ C
R5 ← R3 + R4 ; add Ci to product