Introduction To Parallelism
Introduction To Parallelism
Fundamental Concepts
circa 2012
1.6 / yr
GIPS
Pentium II R10000
Pentium
68040 The number of cores
80486 has been increasing
80386 from a few in 2005
MIPS to the current 10s,
68000 and is projected to
80286 reach 100s by 2020
KIPS
1980 1990 2000 2010 2020
Calendar year
Fig. 1.1 The exponential growth of microprocessor performance,
known as Moores Law, shown over the past two decades (extrapolated).
Winter 2016 Parallel Processing, Fundamental Concepts Slide 9
1.1 Why Parallel Processing?
Bit-vector n
1 2
1 2 n
(b)
2 |
| 3 11 | 19 29 31
5 | 7 13|17 23
p = 3, t = 499
Communi-
cation n/p+1 2n/p
n <n/p
nn/p+1 n
Computation
Communication
Ideal speedup
Solution time
Actual speedup
Computation
I/O time
The history of parallel processing has had its ups and downs
(read company formations and bankruptcies!) with what
appears to be a 20-year cycle. Serious interest in parallel
processing started in the 1960s.
memory
stream
Global
Johnson s expansion
SISD SIMD GMSV GMMP
Uniprocessors Array or vector Shared-memory Rarely used
processors multiprocessors
Multiple instr
Distributed
memory
streams
Flynns categories
Faster ICs make parallel machines faster too; what about x1000?
Tyranny of vector supercomputers: Familiar programming model
f = 0
f = fraction
40
unaffected
Spee du p ( s )
f = 0 .01
30 p = speedup
f = 0 .02 of the rest
20
f = 0 .05
1
s=
10 f + (1 f)/p
f = 0 .1
0
min(p, 1/f)
0 10 20 30 40 50
E nha nc em en t f ac tor ( p )
10
9 R(p) Redundancy = W(p) / W(1)
11
12 W(1) = 13 U(p) Utilization = W(p) / [p T(p)]
T(1) = 13
13 Q(p) Quality = T3(1) / [p T2(p) W(p)]
T() = 8
Winter 2014 Parallel Processing, Fundamental Concepts Slide 26
Reduction or Fan-in Computation
Example: Adding 16 numbers, 8 processors, unit-time additions
----------- 16 numbers to be added -----------
Zero-time communication
+ + + + + +
+ + E(8) = 15 / (8 4) = 47%
S(8) = 15 / 4 = 3.75
R(8) = 15 / 15 = 1
+ + + + Q(8) = 1.76
Unit-time communication
+ +
E(8) = 15 / (8 7) = 27%
S(8) = 15 / 7 = 2.14
+ R(8) = 22 / 15 = 1.47
Q(8) = 0.39
Sum