DISTRIBUTED-MEMORY OR GRAPH
MODELS
Given the internal processor and memory structures in
each node, a distributed-memory
architecture is characterized primarily by the network
used to interconnect the
DATA BROADCASTING
Because data broadcasting is a fundamental building-block
computation in parallel
processing, we devote this section to discussing how it can
be accomplished on the various
PRAM subm
PRAM SUBMODELS AND
ASSUMPTIONS
As mentioned in Section 4.4, the PRAM model prescribes
the concurrent operation of
p processors (in SIMD or MIMD mode) on data that are
accessible to all of them in an m
CIRCUIT MODEL AND PHYSICAL
REALIZATIONS
In a sense, the only sure way to predict the performance of
a parallel architecture on a
given set of problems is to actually build the machine and
run the prog
SEMIGROUP OR FAN-IN
COMPUTATION
Semigroup computation was defined in Section 2.1 based
on associative binary operator
. This computation is trivial for a CRCW PRAM of the
reduction variety if the redu
PARALLEL PREFIX COMPUTATION
Just as was the case for a linear array (Section 2.3),
parallel prefix computation consists
of the first phase of the semigroup computation. We see in
Fig. 5.4 that as we f
A PARALLEL SELECTION
ALGORITHM
If a parallel computation model supports fast sorting, then
the n-input parallel selection
problem can be solved through sorting. This is the case,
e.g., for the CRCW PR
SEQUENTIAL RANK-BASED
SELECTION
Rank-based selection is the problem of finding a (the) kth
smallest element in a sequence
S = x0 , x 1 , . . . , x n -1 whose elements belong to a linear
order. Median,
MATRIX MULTIPLICATION
In this section, we discuss PRAM matrix multiplication
algorithms as representative
examples of the class of numerical problems. Matrix
multiplication is quite important in its
o
RANKING THE ELEMENTS OF A LINKED
LIST
Our next example computation is important not only
because it is a very useful building
block in many applications, but also in view of the fact that
it demonstra