Parallel Computer Architecture
We have talked about the classification of parallel computers and their interconnection networks in that order in units 2 and 3 of this block. In this part, various parallel architectures are talk about, which are based on the classification of parallel computers considered previous. The two main parametric considerations in designing parallel computer architecture are: (i) implementing many number of instructions in parallel, and (ii) increasing the effectiveness of processors. There are certain methods by which instructions can be implemented in parallel and parallel architectures are based on these methods of implementing instructions in parallel. Pipelining is one of the classical and best methods to enhance parallelism where dissimilar stages perform repeated functions on dissimilar operands. Vector processing is the logical or arithmetic computation applied on vectors while in scalar processing only single data item or a pair of data items is processed. Parallel architectures have also been developed based on associative memory organizations. Another thought of improving the processor's speed by having many instructions per cycle is called as Superscalar processing. Multithreading for enhancing processor utilization has also been used in parallel computer architecture. All the architectures based on these parallel-processing varieties have been discussed in detail in this unit.