Asst. Professor, Dept. of MCA.
Many different hardware architectures exist today to perform a single task using multiple processors.
Grid computing:a combination of computer resources from multiple administrative domains applied to a common task.
MPP (Massively Parallel Processor) systems known as the supercomputer architecture.
Cluster server system a network of general-purpose computers.
SMP (Symmetric Multiprocessing) system identical processors (in powers of 2) connected together to act as one unit.
Multi-core processor a single chip with numerous computing cores.
Flynn's Taxonomy is a classification of computer architectures proposed by Michael J. Flynn . It is based on the concurrency of instruction and data streams available in the architecture. An instruction stream is the set of instructions that makes up a process, and a data stream is the set of data to be processed.
1. Single Instruction, Single Data stream (SISD)
SISD system is a sequential system where one instruction stream process one data stream. The pre-2004 PCs were this type of system.
2. Single Instruction, Multiple Data streams SIMD)
One instruction is broadcasted across many compute units, where each unit processes the same instruction on different data. The vector processor, a type of a supercomputer, is an example of this architecture type. Recently, various micro-processors include SIMD processors. For example, SSE instruction on Intel CPU, and SPE instruction on Cell Broadband Engines performs SIMD instructions.
3. Multiple Instruction, Single Data stream (MISD)
Multiple instruction streams process a single data stream. Very few systems fit within this category, with the exception for fault tolerant systems.
4. Multiple Instruction, Multiple Data streams (MIMD)
Multiple processing units each process multiple data streams using multiple instruction streams.
Using this classification scheme, most parallel computing hardware architectures, such as the SMP and cluster systems, fall within the MIMD category. For this reason, the MIMD architecture is further categorized by memory types.
Distributed Memory type:
Tasks that take too long using one computer can be broken up to be performed in parallel using a network of processors. This is known as a cluster server system, which is perhaps the most commonly-seen distributed memory type system. This type of computing has been done for years in the HPC (High Performance Computing) field, which performs tasks such as large-scale simulation.
MPP (Massively Parallel Processor) system is also another commonly-seen distributed memory type system. This connects numerous nodes, which are made up of CPU, memory, and a network port, via a specialized fast network. NEC's Earth Simulator and IBM's blue Gene are some of the known MPP systems.
Shared Memory Type:
In shared memory type systems, all processors share the same address space, allowing these processors to communicate with each other through Read/Writes to shared memory. Since data transfers/collections are unnecessary, this results in a much simpler system from the software perspective. shared memory type system are the Symmetric Multiprocessing (SMP) systems.