Hardware Reference
In-Depth Information
These machines are specifically designed to handle the demands of multimedia
rendering and may become important in the future (Kapasi et al., 2003).
MISD machines are a somewhat strange category, with multiple instructions
operating on the same piece of data. It is not clear whether any such machines
exist, although some people regard pipelined machines as MISD.
Finally, we have MIMD, which are just multiple independent CPUs operating
as part of a larger system. Most parallel processors fall into this category. Both
multiprocessors and multicomputers are MIMD machines.
Flynn's taxonomy stops here, but we have extended it in Fig. 8-23. SIMD has
been split into two subgroups. The first one is for numeric supercomputers and
other machines that operate on vectors, performing the same operation on each
vector element. The second one is for parallel-type machines, such as the ILLIAC
IV, in which a master control unit broadcasts instructions to many independent
ALUs.
Parallel computer architectures
SISD
SIMD
MISD
MIMD
(Von Neumann)
?
Vector
processor
Array
processor
Multi-
processors
Multi-
computers
UMA
COMA
NUMA
MPP
COW
Hyper-
cube
Bus
Switched
CC-NUMA
NC-NUMA
Grid
Shared memory
Message passing
Figure 8-23. A taxonomy of parallel computers.
In our taxonomy, the MIMD category has been split into multiprocessors (shar-
ed-memory machines) and multicomputers (message-passing machines). Three
kinds of multiprocessors exist, distinguished by the way the shared memory is im-
plemented on them. They are called UMA ( Uniform Memory Access ), NUMA
( NonUniform Memory Access ), and COMA ( Cache Only Memory Access ).
These categories exist because in large multiprocessors, the memory is usually
split up into multiple modules. UMA machines have the property that each CPU
 
Search WWH ::




Custom Search