(Massively Parallel Processing or Massively Parallel Processor) A multiprocessing architecture that uses many processors and a different programming paradigm than the common symmetric multiprocessing (SMP) found in today's computer systems.|
Self-Contained MPP Subsystems
Each CPU is a subsystem with its own memory and copy of the operating system and application, and each subsystem communicates with the others via a high-speed interconnect. In order to use MPP effectively, an information processing problem must be breakable into pieces that can all be solved simultaneously. In scientific environments, certain simulations and mathematical problems can be split apart and each part processed at the same time. In the business world, a parallel data query (PDQ) divides a large database into pieces. For example, 26 CPUs could be used to perform a sequential search, each one searching one letter of the alphabet. To take advantage of more CPUs, the data have to be broken further into more parallel groups.
In contrast, adding CPUs in an SMP system increases performance in a more general manner. Applications that support parallel operations (multithreading) immediately take advantage of SMP, but performance gains are available to all applications simply because there are more processors. For example, four CPUs can be running four different applications. See SMP.
In MPP operation, the problem is broken up into separate pieces, which are processed simultaneously. In SMP, CPUs are assigned to the next available task or thread that can run concurrently.
This Reliant computer from Pyramid Technology combined both MPP and SMP processing. The SMP systems attached to the Reliant's high-speed mesh interconnect, providing unusual flexibility and scalability. See
The balls and pipes along with the purple CPUs and orange disks conceptually show Tandem Computers' ServerNet, a high-speed switch between CPU and I/O subsystems. See