























Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
An in-depth exploration of parallelism, concurrency, and scalability in extreme computing. It covers definitions, variants, and metrics related to these concepts, as well as the importance of perfect strong and weak scaling. Understand how to measure speedup and the limitations of perfect speedup.
Typology: Study notes
1 / 31
This page cannot be seen from the preview
Don't miss anything!
























Extreme Computing: Parallelism
8/12/
Extreme Computing: Parallelism
8/12/
different central processing units
Executed in parallel
”: executed at exactly the same time
Parallel hardware
:” multiple, usually identical,
hardware, each capable of independent computation
Parallel program
:” Program which divides computation
into steps that might in fact be executed “in parallel” on“parallel hardware”
Extreme Computing: Parallelism
8/12/
processes as well as parallelism
same time, and potentially interacting with each other
simultaneously
everywhere at same time”
(Lester, The Art of Parallel Programming, 2006, p. 29)
program execution
Extreme Computing: Parallelism
8/12/
processes as well as parallelism
same time, and potentially interacting with each other
in state of computation at the same time
degree of concurrency
= # of distinct
actions that are in an active state of execution atsame time
Extreme Computing: Parallelism
8/12/
easily upgraded or upgraded on demand
be modified to fit the problem area.
which indicates its ability to either handle growing amountsof work in a graceful manner, or to be readily enlarged
scalable when it is subject to extremes
Extreme Computing: Parallelism
8/12/
Scalability
(Still from Wikipedia)
adding hardware, proportionally to the capacityadded, is said to be a
scalable system
program, or other system is said to scale if– it is suitably efficient and practical when applied to large
situations (e.g. a large input data set or large number ofparticipating nodes in the case of a distributed system).
then it does not scale.
Extreme Computing: Parallelism
8/12/
in a system, typically involving the addition of CPUsor memory to a single computer
system, such as adding a new computer to adistributed software application
Extreme Computing: Parallelism
8/12/
Work
: total number of basic operations
that need to be executed in a program
Performance metric
: measure of work
performed per unit time–
Peak performance metric
: absolute maximum
work per unit time that can be done by a processorfor any algorithm
Sustained performance metric
: work per second
observed when running a specific algorithm
Extreme Computing: Parallelism
8/12/
A,X
(N,P) = time to solution
architecture X
Extreme Computing: Parallelism
8/12/
N using P processors
Strong Scaling
: T(N,P) ~ T(N,1)/P
Perfect strong scaling
if time decrease = 1/P
Weak Scaling
: T(1,1) ~ T(P,P)
Perfect weak scaling
if problem size proportional to P
Extreme Computing: Parallelism
8/12/
Time to Solution Surface:
Single Processor Curve (1,1,1)
T(N,P): Time to Solution
P: # of Processors
N: Problem Size T(N,1)
Sequential time complexity curve
Note: assume log axes,with time normalizedso origin is T(1,1) =
Extreme Computing: Parallelism
8/12/
Perfect Strong Scaling:
Curve in NxP plane is
reflection of curve
in NxT plane
Lines are 1/P
(1,1,1)
T(N,P): Time to Solution
P: # of Processors
N: Problem Size T(N,1)
When P = T(N,1) T(1,P) = T(P,1)
then
T(N,P) = T(N,1)/P= T(N,1)/T(N,1)
= 1
Enough processorsare used to keep
problem solution time = 1
Less than perfect strong scaling is
in front of
surface
Extreme Computing: Parallelism
8/12/
Lines of ConstantExecution Time
(1,1,1)
T(N,P): Time to Solution
P: # of Processors
N: Problem Size T(N,1)
T(X,X)=
Lines of ConstantExecution Time
(1,1,1)
T(N,P): Time to Solution
P: # of Processors
N: Problem Size T(N,1)
T(X,X)=
Extreme Computing: Parallelism
8/12/
If work delivered by a processor to a solution for a
particular system is independent of N and P:
then system exhibits perfect weak scaling if
T(N,1) = N*T(1,1)
i.e. the sequential time complexity is linearin problem size
then if system exhibits perfect weak scalingthen it also exhibits perfect strong scaling
then the scaling surface is represented byT(N,P) = N*T(1,1)